#include?<stdio.h>
int?main()?
{
????int?year?=?2008;
????int?month?=?8;
????int?day?=?8;
????int?num=0;
????switch(month)
????case?1;
????num=0;
????break;
????case?2;
????num=30;
????break;
????case?3;
????num=59;
????break;
????case?4;
????num=90;
????break;
????case?5;
????num=120;
????break;
????case?6;
????num=151;
????break;
????case?7;
????num=181;
????break;
????case?8;
????num=212;
????break;
????case?9;
????num=243;
????break;
????case?10;
????num=273;
????break;
????case?11;
????num=304;
????break;
????case?12;
????num=334;
????break;
????if(year%4==0)
????{
????????num+=1;
????}
????num+=day;
????printf("%d\n",day);
?return?0;
}
2020-05-07
第一 case是冒號結(jié)尾哦。 第二,閏年判定方式是能被4或400整除但不能被100整除。所以應(yīng)該是if(year %4 ==0 || year %400 ==0 && year %100 ==!0)。第三,你沒有判定閏年二月多加1天,閏年多加不加1天有兩種情況,一是在2月前就不用加,但是在2月后就要加,所以需要有
? ? if (year % 4 ==0 || year % 400 == 0 && year % 100 ==!0)
? ? ? ? flag = 1;
? ? else
? ? ? ? flag = 0;
? ? if (flag = 1 && month > 2)
? ? ? ? sum ++;