大神们啊,我这是怎么回事啊? #include <stdio.h> int main() { int year = 2008; int month = 8; int day = 8; printf("the day is number :\t"); int flag, 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; default:printf("error!\n"); break; } if (year % 400 == 0 || year % 4 == 0 && year % 100 != 0) flag = 1; else flag = 0; if (month>2) sum = sum + flag + day; else sum = sum + day; printf("%d年%d月%d日是该年第%d天\n", year,month,day,sum); return 0; }
你month定义的是一个整型,而在switch case语句中,你用的是字符型
这样啊,我去试试