為啥輸出不對..
#include <stdio.h>
int main()?
{?
? ? /* 定義需要計(jì)算的日期 */
? ? int year = 2008;
? ? int month = 8;
? ? int day = 8;
? ? int i;
? ? /*
? ? ?* 請使用switch語句,if...else語句完成本題
? ? ?* 如有想看小編思路的,可以點(diǎn)擊左側(cè)任務(wù)中的“不會了怎么辦”
? ? ?* 小編還是希望大家獨(dú)立完成哦~
? ? ?*/
? ? if(year%400==0||(year%4==0&&year%100!=0))
? ? {? ?
? ? ? ? i=1;
? ? }
? ? else
? ? {
? ? ? ? i=0;
? ? }
? ? switch(month)
? ? {? ?
? ? ? ? case 1:day;
? ? ? ? case 2:day+=31;
? ? ? ? case 3:day+=(28+i);
? ? ? ? case 4:day+=31;
? ? ? ? case 5:day+=30;
? ? ? ? case 6:day+=31;
? ? ? ? case 7:day+=30;
? ? ? ? case 8:day+=31;
? ? ? ? case 9:day+=31;
? ? ? ? case 10:day+=30;
? ? ? ? case 11:day+=31;
? ? ? ? case 12:;break;
? ? }
? ? printf("是2008年的第%d天",day);
? ? return 0;
}
2019-10-11
更正:switch語句是執(zhí)行符合條件以下的語句,所以你的代碼跳進(jìn)switch后,直接跳到case 8這里運(yùn)行并且執(zhí)行了以下的條件,所以得到了131天,但是前面1到7是并沒有執(zhí)行的
2019-10-11
switch語句是執(zhí)行符合條件一下的語句,所以你的代碼跳進(jìn)switch后,直接跳到case 8這里運(yùn)行并且執(zhí)行了一下的條件,所以得到了131天,但是前面1到7是并沒有執(zhí)行的