Problem Description
给定一个日期,输出这个日期是该年的第几天。
Input
输入数据有多组,每组占一行,数据格式为YYYY/MM/DD组成,具体参见sample input ,另外,可以向你确保所有的输入数据是合法的。
Output
对于每组输入数据,输出一行,表示该日期是该年的第几天。
Sample Input
1985/1/20 2006/3/12
Sample Output
20 71
#include <stdio.h>
int main()
{
int y,m,d,i,n;
while(scanf("%d/%d/%d",&y,&m,&d)!=EOF)
{n=0;
if (y%4==0)
if(y%100==0)
if(y%400==0)
i=29;
else
i=28;
else
i=29;
else
i=28;
switch(m){
case 1:n+=d;break;
case 2:n+=31+d;break;
case 3:n+=31+i+d;break;
case 4:n+=31*2+i+d;break;
case 5:n+=31*2+i+30+d;break;
case 6:n+=31*3+i+30+d;break;
case 7:n+=31*3+i+30*2+d;break;
case 8:n+=31*4+i+30*2+d;break;
case 9:n+=31*5+i+30*2+d;break;
case 10:n+=31*5+i+30*3+d;break;
case 11:n+=31*6+i+30*3+d;break;
case 12:n+=31*6+i+30*4+d;break;}
printf("%d\n",n);
}
return 0;
}