请你计算出 xx 年 yy 月 zz 日是 xx 年的第几天。
请注意闰年对答案的影响。
输入格式
一行三个整数,xx,yy 和 zz。(1583\le x\le 21001583≤x≤2100)。数据保证输入合法。
输出格式
一个整数,表示是第几天。
Sample Input
2016 3 1
Sample Output
61
Sample Input 2
1900 3 1
Sample Output 2
60
#include<stdio.h>
int main ()
{
int x,y,z;//定义三个变量分别为年月日
scanf("%d%d%d",&x,&y,&z);//输入年月日的值
if (x%4000||(x%40&&x%100!=0))//判断是否为闰年
{
switch(y)//用switch case 语句将月份一次对应计算
{
case 1:
printf("%d\n",z);
break;
case 2:
printf("%d\n",31+z);
break;
case 3:
printf("%d\n",60+z);
break;
case 4:
printf("%d\n",91+z);
break;
case 5:
printf("%d\n",121+z);
break;
case 6:
printf("%d\n",152+z);
break;
case 7:
printf("%d\n",182+z);
break;
case 8:
printf("%d\n",213+z);
break;
case 9:
printf("%d\n",244+z);
break;
case 10:
printf("%d\n",274+z);
break;
case 11:
printf("%d\n",305+z);
break;
case 12:
printf("%d\n",335+z);
break;
}
}else{
switch(y)//计算非闰年的月份天数
{
case 1:
printf("%d\n",z);
break;
case 2:
printf("%d\n",31+z);
break;
case 3:
printf("%d\n",59+z);
break;
case 4:
printf("%d\n",90+z);
break;
case 5:
printf("%d\n",120+z);
break;
case 6:
printf("%d\n",151+z);
break;
case 7:
printf("%d\n",181+z);
break;
case 8:
printf("%d\n",212+z);
break;
case 9:
printf("%d\n",243+z);
break;
case 10:
printf("%d\n",273+z);
break;
case 11:
printf("%d\n",304+z);
break;
case 12:
printf("%d\n",334+z);
break;
}
}
return 0;
}