新生程序设计竞赛将于12月5日举行,欢迎感兴趣的同学报名,具体查看教务处网站
Problem D: 结构体:计算输入日期是该年的第几天
Time Limit: 1 Sec Memory Limit: 64 MB
Submit: 21940 Solved: 12261
Description
定义一个结构体变量(包括年、月、日),输入一个日期,计算并输出该日是本年中的第几天.
Input
多组测试数据,每组输入年-月-日
Output
输出其在该年中对应的天数
Sample Input
2006-10-1
Sample Output
274
#includetypedef struct date { int flag,y,m,d; }date; //最好定义为全局变量或者静态变量 //结构体内最好不要初始化,C平台不支持 int max[2][13] = {{0,31,28,31,30,31,30,31,31,30,31,30,31}, {0,31,29,31,30,31,30,31,31,30,31,30,31}}; int main() { date p; while (scanf("%d-%d-%d",&p.y,&p.m,&p.d) != EOF) { int sum = 0; p.flag = 0; //判断是否是闰年 if ((p.y%4==0 && p.y%100!=0) || p.y%400 == 0) p.flag = 1; for (int i = 1;i < p.m;i++) { sum += max[p.flag][i]; } sum += p.d; printf("%dn",sum); } return 0; }
//结构体内最好不要初始化,C平台不支持



