思路

  1. 月份表,口诀:一三五七八十腊,三十一天永不差
  2. 判断是否是闰年:口诀:4年1闰年,百年不闰,400年再闰
  3. 求和
  4. 最后再和天数相加

Answer

#include<stdio.h>

int main() {
    //             1    2   3   4   5   6   7   8   9  10  11  12
    int num[12] = {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 };
    int year, month, day;
    int sum=0;

    while (scanf("%d %d %d", &year, &month, &day) != EOF) {

        //判断是否时闰年:能被4且不能被100整除或者400整除
        if((year%400==0) || (year%4==0 && year%100!=0)){
//             是闰年
            num[1]=29;
        }else{
            num[1]=28;
        }
        //1、3、5、7、8、10、12=31
        //4、6、9、11=30天
        for(int i=0; i<month-1; i++){
            sum += num[i];
        }
        printf("%d",sum+day);
    }
    return 0;
}