第几天?

Problem Description

给定一个日期,输出这个日期是该年的第几天。

 

Input

输入数据有多组,每组占一行,数据格式为YYYY/MM/DD组成,具体参见sample input ,另外,可以向你确保所有的输入数据是合法的。

 

Output

对于每组输入数据,输出一行,表示该日期是该年的第几天。

 

Sample Input

1985/1/20

2006/3/12

 

Sample Output

20

71

 

 1 #include <stdio.h>
 2  
 3 int main(){
 4     int a;
 5     int b;
 6     int c;
 7     int i;
 8     int day[13];
 9     int sum;
10      
11     day[1]=31;
12     day[2]=28;
13     day[3]=31;
14     day[4]=30;
15     day[5]=31;
16     day[6]=30;
17     day[7]=31;
18     day[8]=31;
19     day[9]=30;
20     day[10]=31;
21     day[11]=30;
22     day[12]=31;
23      
24     while((scanf("%d/%d/%d",&a,&b,&c))!=EOF){
25         sum=0;
26          
27         for(i=1;i<=b-1;i++)
28             sum+=day[i];
29              
30         sum+=c;
31          
32         if((a%400==0 || (a%4==0 && a%100!=0)) && b>=3)
33             sum++;
34              
35         printf("%d\n",sum);
36     }
37      
38      
39     return 0;
40 }

 

posted @ 2014-10-27 16:06  zqxLonely  阅读(191)  评论(0编辑  收藏  举报