天天看點

J - 第幾天?

給定一個日期,輸出這個日期是該年的第幾天。

Input

輸入資料有多組,每組占一行,資料格式為YYYY/MM/DD組成,具體參見sample input ,另外,可以向你確定所有的輸入資料是合法的。

Output

對于每組輸入資料,輸出一行,表示該日期是該年的第幾天。

Sample Input

1985/1/20

2006/3/12

Sample Output

20

71

思路:注意區分平閏年即可

1、平年的2月份有28天;閏年的2月份有29天。

#include<stdio.h>
int main()
{
    int a[13]={0,31,29,31,30,31,30,31,31,30,31,30,31};
     int b[13]={0,31,28,31,30,31,30,31,31,30,31,30,31};
    int n,y,r;
    while(~scanf("%d/%d/%d",&n,&y,&r))
    {
        int sum=0;
        int i;
        if((n%100!=0&&n%4==0)||n%400==0)
        {
            for(i=1;i<=y-1;i++)
            sum+=a[i];

        }
        else
        {
               for(i=1;i<=y-1;i++)
            sum+=b[i];
        }
        printf("%d\n",sum+r);
    }
    return 0;
}