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

大神们哪错了

#include <stdio.h>

int main() 

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

    int year = 2008;

    int month = 8;

    int day = 8;

    int sum,flag;

    switch(mouth)

    {

    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("一年当中只有12个月");break;

    }

    sum=sum+day;

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

    flag=1;

    else

    flag=0;

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

    sum++;

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


    

    

    

    

    









return 0;


提问者:雾都啊 2015-07-27 16:48

个回答

  • Perona
    2015-07-27 17:01:31
    已采纳

    switch(mouth)
    if(flag==1&&mouth>2)
    printf("%d年%d月%d日是该年的第%d天",year,mouth,day,sum);

    这3行的month都写成mouth,改过来即可。

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

    这里的year前面的逗号敲成了中文的逗号,改成英文的即可。

  • 雾都啊
    2015-07-27 17:01:50

    月是month。。。。。我的错。。。