#include <stdio.h> int main() { int year = 2008; int month = 8; int day = 8; int sum =0; 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; } sum=month+day; if((year%4==0&&year%100!=0)||year%400==0) sum+=1; printf("%d年%d月%d日是该年的第%d天",year,month,day,sum); else printf("%d年%d月%d日是该年的第%d天",year,month,day,sum); return 0; }
1:sum+=day;
2:if()
{
}要加括号
以下是修改过的程序,错误原因我给你注释标注了,望采纳-_-.//
#include <stdio.h> int main() { int year = 2008; int month = 8; int day = 8; int sum =0; 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; } sum += day;//逗号改为英文格式 ,而且逻辑有错误 ---总天数 应该是sum+day if((year%4==0&&year%100!=0)||year%400==0)//if语句没有加大括号 { sum+=1; printf("%d年%d月%d日是该年的第%d天",year,month,day,sum); } else printf("%d年%d月%d日是该年的第%d天",year,month,day,sum); return 0; }