第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時(shí)綁定郵箱和手機(jī)立即綁定

關(guān)于月份順序問題

#include <stdio.h>

int main()?

{?

? ? /* 定義需要計(jì)算的日期 */

? ? int year = 2008;

? ? int month = 8;

? ? int day = 8;

? ? int sum=0;


? ? switch(month-=1){


? ? ? ? case 1:sum+=31;

? ? ? ? case 2:if(year%4)sum+=28;else sum+=29;

? ? ? ? case 3:sum+=31;

? ? ? ? case 4:sum+=30;

? ? ? ? case 5:sum+=31;

????????case 6:sum+=30;

? ?? ? ?case 7:sum+=31;

????????break;

}

????????sum+=day;

????printf("2014年08月08日是該年的第%d天\n",sum);

//

#include <stdio.h>

int main()?

{?

? ? /* 定義需要計(jì)算的日期 */

? ? int year = 2008;

? ? int month = 8;

? ? int day = 8;

? ? int sum=0;

switch(month-=1){

case 7:sum+=31;

case 6:sum+=30;

case 5:sum+=31;

case 4:sum+=30;

case 3:sum+=31;

case 2:if(year%4)sum+=28;else sum+=29;

case 1:sum+=31;

break;

}

sum+=day;

printf("2014年08月08日是該年的第%d天\n",sum);

return 0;

}

這是程序基本相同的代碼,不同的就是一個(gè)月份是從大到小,另一個(gè)是從小到大,我想問問為啥結(jié)果不一樣?

正在回答

2 回答

switch語句會先找到case的數(shù)字然后往下運(yùn)行,第一個(gè)只計(jì)算了case7,第二個(gè)從case7計(jì)算到case一。。

0 回復(fù) 有任何疑惑可以回復(fù)我~

#include <stdio.h>

int main()?

{?

? ? /* 定義需要計(jì)算的日期 */

? ? int year = 2008;

? ? int month = 8;

? ? int day = 8;

? ? int sum=0;

switch(month-=1){

case 7:sum+=31;break;

case 6:sum+=30;break;

case 5:sum+=31;break;

case 4:sum+=30;break;

case 3:sum+=31;break;

case 2:if(year%4)sum+=28;else sum+=29;break;

case 1:sum+=31;break;

break;

}

sum+=day;

printf("2014年08月08日是該年的第%d天\n",sum);

return 0;

}

你把每一個(gè)case 后面加個(gè)break;就行了,第一個(gè)是因?yàn)?月份的時(shí)候,輸入switch的時(shí)候輸出就是case7的那個(gè)情況,然后接著執(zhí)行了break;這一結(jié)束語句,第二個(gè)代碼,因?yàn)槟惆裞ase倒過來寫,那么case7情況運(yùn)行完之后沒有結(jié)束語句break;,那么就表明沒有執(zhí)行結(jié)束,不會跳出switch,而是緊接著執(zhí)行case6;case5;……直到遇到結(jié)束語句break;才結(jié)束switch

0 回復(fù) 有任何疑惑可以回復(fù)我~

舉報(bào)

0/150
提交
取消

關(guān)于月份順序問題

我要回答 關(guān)注問題
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號