求教程序题
题目:输入某年某月某日,判断这一天是这一年的第几天?(ps:我做出了种方法,大家还有其他好的简单的解决办法吗,求教!!)#include<stdio.h>
void main()
{
int year,month,day,sum,leap;
printf("Please input year,month,day:");
scanf("%d,%d,%d",&year,&month,&day);
switch(month)/*先计算某月以前月份的总天数*/
{
case 1: sum=0; break;
case 2: sum=31; break;
case 3: sum=59; break;
case 4: sum=90; break;
case 5: sum=120; break;
case 6: sum=151; break;
case 7: sum=181; break;
case 8: sum=212; break;
case 9: sum=243; break;
case 10: sum=273; break;
case 11: sum=304; break;
case 12: sum=334; break;
default : printf("date error"); break;
}
sum=sum+day;/*再加上某天的天数*/
if(year%400==0 || (year%4==0 && year%100!=0))/*判断是不是闰年*/
leap=1;
else
leap=0;
if(leap==1 && month>2)/*如果是闰年且月份大于2,总天数应该加一天*/
sum++;
printf("It is %d day\n",sum);
}