請問哪里錯了,求大神詳解,萬分感謝~~
#include <stdio.h>
int main()
{
??? int year = 2008;
??? int month = 8;
??? int day = 8;
??? switch(day)
??? {
??????? case 1:day=0;break;
?????? case 2:day=31;break;
??????? case 3:day+=29;
??????? if(year%400=0)
??????????? flag=1;
??????? else
??????????? flag=0;day+=28;
??????? break;
??????? case 4:day+=31;break;
??????? case 5:day+=30;break;
??????? case 6:day+=31;break;
??????? case 7:day+=30;break;
??????? case 8:day+=31;break;
??????? case 9:day+=31;break;
??????? case 10:day+=30;break;
??????? case 11:day+=31;break;
??????? case 12:day+=30;break;
??????? default:day+=8;break;
??????? printf("%d年%d月%d日是改年的第%d天", year,month,day);
??????? return 0;
??? }
2015-12-17
#include <stdio.h>
int main()?
{?
? ? int year = 2008,flag;
? ? int month = 8;
? ? int day = 8;
? ? int day1=day;
? ? switch(day)
? ? {
? ? ? ? case 1:day1=0;break;
? ? ? ?case 2:day1=31;break;
? ? ? ? case 3:day1+=29;
? ? ? ? if(year%400==0)
? ? ? ? ? ? flag=1;
? ? ? ? else
? ? ? ? ? ? flag=0;day1+=28;
? ? ? ? break;
? ? ? ? case 4:day1+=31;break;
? ? ? ? case 5:day1+=30;break;
? ? ? ? case 6:day1+=31;break;
? ? ? ? case 7:day1+=30;break;
? ? ? ? case 8:day1+=31;break;
? ? ? ? case 9:day1+=31;break;
? ? ? ? case 10:day1+=30;break;
? ? ? ? case 11:day1+=31;break;
? ? ? ? case 12:day1+=30;break;
? ? ? ? default:day1+=8;break;
? ? ? ?
? ? }
? ? ?printf("%d年%d月%d日是改年的第%d天", year,month,day,day1);
? ? ? ? return 0;
}
這是改過的代碼 你的代碼錯了很多地方 ?我這個不是對的 只是編譯沒了錯誤 ?你的錯有 ? if里面 應該是== ?還有些 ?標點 你是中文輸入寫的 ?還有 好多 ? 你的代碼邏輯也有問題 ?輸出不對
2015-12-17
。。。你能不能換個變量名,你前面int day。case里又用day,相當于printf X年X月 day日是該年的day天。而且第一個case1 應該是0,一月一號是該年第一天,不是31