沒出現運行結果,請大神幫我看看原因,謝謝
#include <stdio.h>
int main()?
{?
? ? /* 定義需要計算的日期 */
? ? int year = 2008;
? ? int month = 8;
? ? int day = 8;
? ? /*
? ? ?* 請使用switch語句,if...else語句完成本題
? ? ?* 如有想看小編思路的,可以點擊左側任務中的“不會了怎么辦”
? ? ?* 小編還是希望大家獨立完成哦~
? ? ?*/
? ? int i;
? ? int number=0;
? ? for(i=1;i<month;i++)
? ? {
? ? ? ? if(i%2!=0)
? ? ? ? number+=31;
? ? ? ? else
? ? ? ? {
? ? ? ? ? if(i=2)
? ? ? ? ? {
? ? ? ??
? ? ? ? ? ?switch((year%4==0)&&(year%100!=0))
? ? ? ? ? ? ?{
? ? ? ? ? ? ? case 1:number+=29;break;
? ? ? ? ? ? ? case 0:number+=28;break;
? ? ? ? ? ? ?}
? ? ? ? ? }
? ? ? ? ? else
? ? ? ? ? number+=30;
? ? ? ? }
? ? ? ??
? ? }
? ? number+=day;
? ? printf("%d年%d月%d日是第%d天",year,month,day,number);
return 0;
}
2016-05-27
if(i==2) //‘=’是賦值‘==’才是判斷
//第二個else應該刪掉,第一個else意思是指if(i%2==0),只需要在執行語句中指出特殊的i==2即可
switch(year%4==0&&year%100!=0||year%400==0) //判斷語句不全,**00的年份以400年為一個周期,不算的話會少一天
//事實上7、8月都是31天,如果簡單的按奇偶月來算的話,應該會比正常的天數少一天,改進的方法為‘++’
2016-05-27
少判斷一個year%400