为了账号安全,请及时绑定邮箱和手机立即绑定

这个代码应该怎么改才对?

#include <stdio.h>

int main() 

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

    int year = 2008;

    int month = 8;

    int day = 8;

    int sum=0;

    switch(month)

    {

        case 1:sum+=31;break;

        case 2:if(year%400 != 0 && year%4 == 0)

                    {

                        sum += 29;

                    }

                    else{

                        sum += 28;

                    }

        case 3:sum+=31;break;

        case 4:sum+=30;break;

        case 5:sum+=31;break;

        case 6:sum+=30;break;

        case 7:sum+=31;break;

        default:printf("一年只有十二个月");break;

    }

     sum=sum+day;

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

    return 0;

}    

    


正在回答

3 回答

case ?:只会执行这一句,sum不会累加

0 回复 有任何疑惑可以回复我~

#include <stdio.h>

int main() 


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

    int year = 2008;

    int month = 8;

    int day = 8;

    int sum=0;

    switch(month)

    {

        case 8:sum=sum+day;

        case 1:sum+=31;

        case 2:if(year%400 != 0 && year%4 == 0)

                    {

                        sum += 29;

                    }

                    else{

                        sum += 28;

                    }

        case 3:sum+=31;

        case 4:sum+=30;

        case 5:sum+=31;

        case 6:sum+=30;

        case 7:sum+=31;break;

        default:printf("一年只有十二个月");break;

    }


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


    return 0;


}    

懂了

0 回复 有任何疑惑可以回复我~

你switch写错了,你看下你写的

0 回复 有任何疑惑可以回复我~
#1

慕圣5519978 提问者

改了之后输出的还是错的
2020-12-07 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

这个代码应该怎么改才对?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信