抄的代码
1 #define _CRT_SECURE_NO_WARNINGS 2 #include<cstdio> 3 int month[13][2] = {//用数组表示定义平年、闰年每个月多少天 4 {0,1},{31,31},{28,29},{31,31},{30,30},{31,31},{30,30},{31,31},{31,31},{30,30},{31,31},{30,30},{31,31} 5 }; 6 bool isLeap(int year) {//判断是否为闰年 7 return (year % 4 == 0 && year % 100 != 0) || (year % 400 == 0); 8 } 9 int main() { 10 int time1, y1, m1, d1; 11 int time2, y2, m2, d2; 12 while (scanf("%d%d",&time1,&time2)!=EOF) 13 { 14 if (time1>time2) { 15 int temp = time1; 16 time1 = time2; 17 time2 = temp; 18 } 19 y1 = time1 / 10000, m1 = time1 % 10000 / 100, d1 = time1 % 100; 20 y2 = time2 / 10000, m2 = time2 % 10000 / 100, d2 = time2 % 100; 21 int ans = 1;//记录结果 22 while (y1<y2||m1<m2||d1<d2) 23 { 24 d1++; 25 if (d1 == month[m1][isLeap(y1)]+1) { 26 m1++; 27 d1 = 1; 28 } 29 if (m1 == 13) { 30 y1++; 31 m1 = 1; 32 } 33 ans++; 34 } 35 printf("%d\n", ans); 36 } 37 return 0; 38 }