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

请问哪里错了,求大神详解,万分感谢~~


#include <stdio.h>
int main()
{
    int year = 2008;
    int month = 8;
    int day = 8;
    switch(day)
    {
        case 1:day=0;break;

       case 2:day=31;break;

        case 3:day+=29;
        if(year%400=0)
            flag=1;
        else
            flag=0;day+=28;
        break;
        case 4:day+=31;break;
        case 5:day+=30;break;
        case 6:day+=31;break;
        case 7:day+=30;break;
        case 8:day+=31;break;
        case 9:day+=31;break;
        case 10:day+=30;break;
        case 11:day+=31;break;
        case 12:day+=30;break;
        default:day+=8;break;
        printf("%d年%d月%d日是改年的第%d天", year,month,day);
        return 0;
    }



正在回答

2 回答

#include <stdio.h>

int main() 

    int year = 2008,flag;

    int month = 8;

    int day = 8;

    int day1=day;

    switch(day)

    {

        case 1:day1=0;break;

       case 2:day1=31;break;

        case 3:day1+=29;

        if(year%400==0)

            flag=1;

        else

            flag=0;day1+=28;

        break;

        case 4:day1+=31;break;

        case 5:day1+=30;break;

        case 6:day1+=31;break;

        case 7:day1+=30;break;

        case 8:day1+=31;break;

        case 9:day1+=31;break;

        case 10:day1+=30;break;

        case 11:day1+=31;break;

        case 12:day1+=30;break;

        default:day1+=8;break;

       

    }

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

        return 0;

}

这是改过的代码 你的代码错了很多地方  我这个不是对的 只是编译没了错误  你的错有   if里面 应该是==  还有些  标点 你是中文输入写的  还有 好多   你的代码逻辑也有问题  输出不对

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

流浪_老

逻辑 你再自己考虑 一下
2015-12-17 回复 有任何疑惑可以回复我~

。。。你能不能换个变量名,你前面int day。case里又用day,相当于printf X年X月 day日是该年的day天。而且第一个case1 应该是0,一月一号是该年第一天,不是31

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

举报

0/150
提交
取消

请问哪里错了,求大神详解,万分感谢~~

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