我的這個(gè)代碼哪里有錯(cuò)誤,明明是對(duì)的
#include <stdio.h>
int main()
{
??? /* 定義需要計(jì)算的日期 */
??? int year = 2008;
??? int month = 8;
??? int day = 8;
??? /*
???? * 請(qǐng)使用switch語句,if...else語句完成本題
???? * 如有想看小編思路的,可以點(diǎn)擊左側(cè)任務(wù)中的“不會(huì)了怎么辦”
???? * 小編還是希望大家獨(dú)立完成哦~
???? */
??? int sum;
??? switch(month)
??? {
??????? case 1:sum=0;break;
??????? case 2:sum=31;break;
??????? case 3:sum=59;break;
??????? case 4:sum=90;break;
??????? case 5:sum=120;break;
??????? case 6:sum=151;break;
??????? case 7:sum=181;break;
??????? case 8:sum=212;break;
??????? case 9:sum=243;break;
??????? case 10:sum=273;break;
??????? case 11:sum=304;break;
??????? case 12:sum=334;break;
??? }
??? if(year%4==0&&year%100!=0)
??? {
??????? sum+=day+1;
??? }
??? else
??? {
??????? sum+=day;
??? }
???
??? printf("%d年%d月%d日是該年中的第%d天",year,month,day,sum);
?return 0;
}
2019-11-15
普通閏年:公歷年份是4的倍數(shù)的,且不是100的倍數(shù),為閏年。(如2004年就是閏年);
世紀(jì)閏年:公歷年份是整百數(shù)的,必須是400的倍數(shù)才是閏年(如1900年不是世紀(jì)閏年,2000年是世紀(jì)閏年);
2019-11-07
你可以將 if(year%4==0&&year%100!=0) 改為 if(year%4==0)試試