第几天?

Description

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

Input

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

Output

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

Sample Input

1985/1/20 2006/3/12
              

Sample Output

20 71
 
 
 
主要是考虑闰年的2月份!
 1 #include <stdio.h>
 2 int main(){
 3 int a[] = {0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
 4 int y, m, d, r, i;
 5 while (scanf("%d/%d/%d", &y, &m, &d) == 3)
 6 {
 7    a[2] = y % 4==0&&y % 100!=0 || y % 400==0 ? 29 : 28;
 8    r = 0;
 9    for (i=1; i<m; ++i)
10    {
11     r += a[i];
12    }
13    r += d;
14    printf("%d
", r);
15 }
16 return 0;
17 }
原文地址:https://www.cnblogs.com/wangmengmeng/p/4552515.html