问答详情
源自:4-17 switch与if语句的应用

为什么结果会不对,看不出来啊

#include <stdio.h>

int main() 

    /* 定义需要计算的日期 */

    int year = 2008;

    int month = 8;

    int day = 8;

    int sum,flag;

 switch(month)

 {

     case1:sum=0;break;

     case2:sum=31;break;

     case3:sum=59;break;

     case4:sum=90;break;

     case5:sum=120;break;

     case6:sum=151;break;

     case7:sum=181;break;

     case8:sum=212;break;

     case9:sum=243;break;

     case10:sum=273;break;

     case11:sum=304;break;

     case12:sum=334;break;

 }

    sum+=day;

    if(year%400==0||(year%4==0&&year%100!=0))

    flag=1;

    else

    flag=0;

    if(flag==1&&month>2)

    sum++;

    printf("%d年%d月%d日是该年的第%d天",year,month,day,sum);

    




return 0;

}


提问者:19影像郭晓倩 2020-06-01 17:46

个回答

  • wzciou
    2020-06-06 20:55:03
    已采纳

    case1:sum=0;break;

    case 1:sum=0;break;

    case后面要带一个空格

  • 慕盖茨0310757
    2020-06-02 11:55:54

     if(year%400==0||(year%4==0&&year%100!=0))这一行多括号了吧