求大神看看哪里錯了,輸入后居然是該年的第40天,非常感謝
#include <stdio.h>
int main()
{
??? /* 定義需要計算的日期 */
??? int year = 2008;
??? int month = 8;
??? int day = 8;
??? /*
???? * 請使用switch語句,if...else語句完成本題
???? * 如有想看小編思路的,可以點擊左側任務中的“不會了怎么辦”
???? * 小編還是希望大家獨立完成哦~
???? */
???? int sum;
??? switch(month)
??? {
??????? case 1:sum+=0;break;
??????? case 2:sum+=31;break;
??????? case 3:
??????? if(year%4==0&&year%100!=0||year%400==0)
????? { sum+=29;
???????????? }else{
??????? sum+=28;break;
??????? }
??????? case 4:sum+=31;break;
??????? case 5:sum+=30;break;
??????? case 6:sum+=31;break;
??????? case 7:sum+=30;break;
??????? case 8:sum+=31;break;
??????? case 9:sum+=31;break;
??????? case 10:sum+=30;break;
??????? case 11:sum+=31;break;
??????? case 12:sum+=30;break;
??? }
??? sum=sum+day;
??? sum++;
??? printf("%d年%d月%d日是該年的第%d天",year,month,day,sum);
?return 0;
}
2022-03-26
感覺應該是這樣吧varre=/^[a-zA-Z][\d\_\.a-zA-Z]{4,19}$/;老師,你真給力,幾乎是有問必答啊,謝謝老師!
2016-11-20
case 從1到12,那么天數(shù)的計算就會計算8月到12月的天數(shù)
?? case 從12到1,那么該計算就會計算從1月到8月的天數(shù)
2016-10-13
你的sum這樣寫代碼沒有保存sum的數(shù)據(jù),等于你每次的sum都是重新賦值為0
2016-10-12
你的程序運行如下
switch(month)
??? {?case 8:sum+=31;break;} ? //sum=31
? sum=sum+day; ? ? ? ? ? ? ? ? ? ? //sum=39
??? sum++;????????????????????????????????//sum=40
??? printf("%d年%d月%d日是該年的第%d天",year,month,day,sum);
?return 0;