题目有问题,没有考虑世纪闰年情况,考虑了了反而通不过最后一个用列。

#include <stdio.h>

int day_of_months[12] = {31,28,31,30,31,30,31,31,30,31,30,31};

int main(void)
{
    int year, month, day;
    int days = 0;

    while(scanf("%d %d %d",&year, &month, &day ) != EOF)
    {
        int i = 0;
        for(i=0; i<(month-1); i++)
        {
            days += day_of_months[i];
        }

        days += day;

        if( ( (year%4 == 0) && (year%100 != 0) ) )//|| (year%400 == 0)  )
        {
            days += 1;
        }
        printf("%d\n", days);
    }

    return 0;
}