有沒(méi)有大佬跟我解釋一下這題
#include <stdio.h>
int main()
{
??? /* 定義需要計(jì)算的日期 */
??? int year = 2008;
??? int month = 8;
??? int day = 8;
??? /*
???? * 請(qǐng)使用swtich語(yǔ)句,if...else語(yǔ)句完成本題
???? * 如有想看小編思路的,可以點(diǎn)擊左側(cè)任務(wù)中的“不會(huì)了怎么辦”
???? * 小編還是希望大家獨(dú)立完成哦~
???? */
??? int date = 0;
??? switch (month)
??? {
??????? case 12:??? date += 30;
??????? case 11:??? date += 31;
??????? case 10:??? date += 30;
??????? case 9:??? date += 31;
??????? case 8:??? date += 31;
??????? case 7:??? date += 30;
??????? case 6:??? date += 31;
??????? case 5:??? date += 30;
??????? case 4:??? date += 31;
??????? case 3:??? if(year%400 != 0 && year%4 == 0){
??????????????????????? date += 29;
??????????????????? }else{
??????????????????????? date += 28;}
??????? case 2:??? date += 31;
??????? default:??? date += 8,printf("2008年8月8日是該年的第%d天",date);break;
??? }
?return 0;
}
2019-05-05
switch()括號(hào)里應(yīng)該寫(xiě)month-1,八月只過(guò)了八天,不能加上八月,執(zhí)行順序是switch(7),接著執(zhí)行 case 7語(yǔ)句,date開(kāi)始累加,case里沒(méi)有break語(yǔ)句,所以會(huì)一直往下執(zhí)行,if應(yīng)該在case 2寫(xiě),把case 1寫(xiě)上,累加了1~7月的天數(shù),最后在default里加上day(即date += day; ),使用day可以提高代碼的復(fù)用性。最后貼上我自己的代碼:
你自己理解理解!
2019-03-05
你這沒(méi)錯(cuò)啊