請問這個代碼哪里錯了?。?/h1>
#include <stdio.h>
int main()
{
??? /* 定義需要計算的日期 */
??? int year = 2008;
??? int month = 8;
??? int day = 8;
??? /*
???? * 請使用switch語句,if...else語句完成本題
???? * 如有想看小編思路的,可以點擊左側任務中的“不會了怎么辦”
???? * 小編還是希望大家獨立完成哦~
???? */
??? int sum,flag;
??? switch(month)
??? {
??????? case 1:sum=0;break;???
??????? case 2:sum=31;break;
??????? case 3:sum+=28;break;???????
??????? case 4:sum+=31;break;
??????? case 5:sum+=30;break;
??????? case 6:sum+=31;break;
??????? case 7:sum+=30;break;
??????? case 8:sum+=31;break;
??????? case 9:sum+=30;break;
??????? case 10:sum+=31;break;
??????? case 11:sum+=30;break;
??????? case 12:sum+=31;break;
??????? default: printf("一年只有十二個月");break;
??? }
??? sum=sum+day;
??? if(year%400==0||year%4==0 &&year%100!=0)
?????? flag=1;
??? else
?????? flag=0;
??? if(flag==1&&month>2)??
????? sum+=1;
????? printf("%d年%d月%d日是該年中的第%d天",year, month, day, sum);
???
??? return 0;
}??
#include <stdio.h>
int main()
{
??? /* 定義需要計算的日期 */
??? int year = 2008;
??? int month = 8;
??? int day = 8;
??? /*
???? * 請使用switch語句,if...else語句完成本題
???? * 如有想看小編思路的,可以點擊左側任務中的“不會了怎么辦”
???? * 小編還是希望大家獨立完成哦~
???? */
??? int sum,flag;
??? switch(month)
??? {
??????? case 1:sum=0;break;???
??????? case 2:sum=31;break;
??????? case 3:sum+=28;break;???????
??????? case 4:sum+=31;break;
??????? case 5:sum+=30;break;
??????? case 6:sum+=31;break;
??????? case 7:sum+=30;break;
??????? case 8:sum+=31;break;
??????? case 9:sum+=30;break;
??????? case 10:sum+=31;break;
??????? case 11:sum+=30;break;
??????? case 12:sum+=31;break;
??????? default: printf("一年只有十二個月");break;
??? }
??? sum=sum+day;
??? if(year%400==0||year%4==0 &&year%100!=0)
?????? flag=1;
??? else
?????? flag=0;
??? if(flag==1&&month>2)??
????? sum+=1;
????? printf("%d年%d月%d日是該年中的第%d天",year, month, day, sum);
???
??? return 0;
}??
2018-08-28
沒有for循環,要把前幾個月份的天數累加,應該在switch外套個for循環,請參考。