第几天?
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)
Total Submission(s): 124039 Accepted Submission(s): 45008
Problem Description
给定一个日期,输出这个日期是该年的第几天。
I
nput
输入数据有多组,每组占一行,数据格式为YYYY/MM/DD组成,具体参见sample input ,另外,可以向你确保所有的输入数据是合法的。
Output
对于每组输入数据,输出一行,表示该日期是该年的第几天。
Sample Input
1985/1/20 2006/3/12
Sample Output
20 71注意:只有是闰年且月份大于2才能让总天数加一
代码:
<span style="font-size:14px;">#include<stdio.h>
#include<string.h>
int main()
{
int year,month,day;
int a[13]={0,31,28,31,30,31,30,31,31,30,31,30,31};
while(scanf("%d/%d/%d",&year,&month,&day)!=EOF)
{
int sum=0;
for(int i=1;i<=month-1;i++)
{
sum+=a[i];
}
sum+=day;
if(year%400==0 || (year%4==0 && year%100!=0))
{
if(month>2)
sum++;
}
printf("%d\n",sum);
}
return 0;
}</span>