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

请问我这个哪里错了呀?各位帮我看看,教教我,谢谢了。

#include <stdio.h>

int main() 

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

    int year = 2008;

    int month = 8;

    int day = 8;

    int days;

    /*

     * 请使用switch语句,if...else语句完成本题

     * 如有想看小编思路的,可以点击左侧任务中的“不会了怎么办”

     * 小编还是希望大家独立完成哦~

     */

    switch(month)

    {

        case 1:days=day;break;

    case 2:days=31+day;break;

    case 3:days=31+28+day;break;

    case 4:days=31+28+31+day;break;

    case 5:days=31+28+31+30+day;break;

    case 6:days=31+28+31+30+31+day;break;

    case 7:days=31+28+31+30+31+30+day;break;

    case 8:days=31+28+31+30+31+30+31+day;break;

    case 9:days=31+28+31+30+31+30+31+30+day;break;

    case 10:days=31+28+31+30+31+30+31+30+31+day;break;

    case 11:days=31+28+31+30+31+30+31+30+31+30+day;break;

    default 12:days=31+28+31+30+31+30+31+30+31+30+31+day;break;

    }

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

    {    

        days=days+1;

    }   

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

    else 

    

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

       return 0;

}


正在回答

3 回答

#include <stdio.h>

int main() 

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

    int year = 2008;

    int month = 8;

    int day = 8;

    int days,days1;

    /*

     * 请使用switch语句,if...else语句完成本题

     * 如有想看小编思路的,可以点击左侧任务中的“不会了怎么办”

     * 小编还是希望大家独立完成哦~

     */

    switch(month)

    {

case 1:

days=day;

break;

case 2:

days=31+day;

break;

case 3:

days=31+28+day;

break;

case 4:

days=31+28+31+day;

break;

case 5:

days=31+28+31+30+day;

break;

case 6:

days=31+28+31+30+31+day;

break;

case 7:

days=31+28+31+30+31+30+day;

break;

case 8:

days=31+28+31+30+31+30+31+day;

break;

case 9:

days=31+28+31+30+31+30+31+30+day;

break;

case 10:

days=31+28+31+30+31+30+31+30+31+day;

break;

case 11:

days=31+28+31+30+31+30+31+30+31+30+day;

break;

default :

days=31+28+31+30+31+30+31+30+31+30+31+day;

break;

    }

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

    {    

        days1=days+1;

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

    }   

    

    else 

    {

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

}

       return 0;

}


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

木然森树 提问者

非常感谢!
2018-03-15 回复 有任何疑惑可以回复我~

printf输出语句括号内的引号没写

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

木然森树 提问者

谢谢!
2018-03-15 回复 有任何疑惑可以回复我~

闰年时如果在一月或二月就不用加1;在判断闰年时前后两个并列条件要用括号;printf(%d年%d月%d日是该年的第%d天,year);没写完;你改改再试试,参考一下答案

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

木然森树 提问者

谢谢啦!
2018-03-15 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

请问我这个哪里错了呀?各位帮我看看,教教我,谢谢了。

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