各位大神,看看我的程序有什么不對
#include <stdio.h>
int main()?
{?
? ? /* 定義需要計算的日期 */
? ? int year = 2008;
? ? int month = 8;
? ? month=month-1;
? ? int day = 8;
? ? int k;
? ? ? ?switch(month)?
? ? ? ?case 1: k=31;
? ? ? ?break;
? ? ? ?case 2: k=28+31;
? ? ? ?break;
? ? ? ?case 3: k=31+28+31;
? ? ? ?break;
? ? ? ?case 4: k=30+31+28+31;
? ? ? ?break;
? ? ? ?case 5: k=31+30+31+28+31;
? ? ? ?break;
? ? ? ?case 6: k=30+31+30+31+28+31;
? ? ? ?break;
? ? ? ?case 7: k=31+30+31+30+31+28+31;
? ? ? ?break;
? ? ? ?case 8: k=31+31+30+31+30+31+28+31;
? ? ? ?break;
? ? ? ?case 9: k=30+31+31+30+31+30+31+28+31;
? ? ? ?break;
? ? ? ?case 10: k=31+30+31+31+30+31+30+31+28+31;
? ? ? ?break;
? ? ? ??
? ? ? if(year%400==0)
? ? ? k=k+day+1;
? ? ? else
? ? ? k=k+day;
? ??
? ? printf("%d",k);
? ? return 0;
}
2018-08-16
閏年的算法也不對。
2018-08-16
swich()后面需要跟大括號,括住case部分
你沒有考慮如果是一月二月閏年也不需要加一天
2018-08-16
month=month-1;如果是month=1月,那么就是0哦,defaut;
另外如果大于2月才要加上1天,如果小于2月,不需要加1的。