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

请问一下我这个代码哪里出了问题的?谢谢!

#include <stdio.h>
int main()
{
    /* 定义需要计算的日期 */
    int year = 2008;
    int month = 8;
    int day = 8;
    /*
     * 请使用switch语句,if...else语句完成本题
     * 如有想看小编思路的,可以点击左侧任务中的“不会了怎么办”
     * 小编还是希望大家独立完成哦~
     */
     int sum,n;
    switch(month)
    {
        case 1: sum=0;break;
        case 2: sum=31;break;
        case 3: sum=31+28;break;
        case 4: sum=31+28+31;break;
        case 5: sum=31+28+31+30;break;
        case 6: sum=31+28+31+30+31;break;
        case 7: sum=31+28+31+30+31+30;break;
        case 8: sum=31+28+31+30+31+30+31;break;
        case 9: sum=31+28+31+30+31+30+31+30;break;
        case 10: sum=31+28+31+30+31+30+31+30+31;break;
        case 11: sum=31+28+31+30+31+30+31+30+31+30;break;
        case 12: sum=31+28+31+30+31+30+31+30+31+30+31;break;
        default:printf("一年中只有十二个月哦");break;
    }
    sum=sum+day;
    if(year%4==0&&year%100!=0)
    n=1;
    else
    n=0;
    if(n==1&&month>2)
    sum++;
    printf("%d年%d月%d日是该年的第%d天",year,month,day,sum);
    return 0;
}
   
   
   
   
   


 return 0;
}


正在回答

2 回答

#include <stdio.h>

int main() 

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

    int year = 2008;

    int month = 8;

    int day = 8;

    int sum=0;

    int m;

    for(m=1;m<month;m++)

    {

        switch(m)

        {

            case 1:

            case 3:

            case 5:

            case 7:

            case 8:

            case 10:

            case 12:

            sum+=31;break;

            case 2:

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

            sum+=29;    

            else 

            sum+=28;

            break;

            case 4: case 6: case 9: case 11:

            sum+=30;

            break;

        }

    

    }

    sum+=day;

    printf("这是第%d天",sum);


return 0;

}


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

兄弟你最后多了一个 return 0; 你把后面那几行去掉就行了

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

举报

0/150
提交
取消

请问一下我这个代码哪里出了问题的?谢谢!

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