讨论那里限制300字符了,只能发这里了。还有更简便的代码吗?

来源:4-17 switch与if语句的应用

奥德彪拉香蕉

2024-08-22 19:52

#include <stdio.h>

int main() 

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

    int year = 2008;

    int month = 8;

    int day = 8;

    /*

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

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

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

     */

    int sum = 0;

    switch(month)

    {

        case 1:

            sum = day;

            break;

        case 2:

            sum = 31+day;

            break;    

        case 3:

            sum = 31+28+day;

            break;  

        case 4:

            sum = 31+28+31+day;

            break;

        case 5:

            sum = 31+28+31+30+day;

            break;

        case 6:

            sum = 31+28+31+30+31+day;

            break;    

        case 7:

            sum = 31+28+31+30+31+30+day;

            break;  

        case 8:

            sum = 31+28+31+30+31+30+31+day;

            break;    

        case 9:

            sum = 31+28+31+30+31+30+31+31+day;

            break;

        case 10:

            sum = 31+28+31+30+31+30+31+31+30+day;

            break;    

        case 11:

            sum = 31+28+31+30+31+30+31+31+30+31+day;

            break;  

        case 12:

            sum = 31+28+31+30+31+30+31+31+30+31+30+day;

            break;

            

        default:

            printf("输入错误,一年只有12个月");

    }

    if(month > 2 && year%4 == 0 && year%100 != 0)  //判断是否是闰年

    {

        sum = sum + 1;   //闰年的2月份比平年多一天

    }

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

return 0;

}


写回答 关注

1回答

  • xixidayo
    2024-09-16 22:49:11

    #include <stdio.h>

    int main() 

        int month,day;

        int day1=8;

        for(month=1,day=day1;month<8;month++)

        {

            if(month%2==1)

            {

                day+=31;

            }

            else

            {

                if(month==2)

                {

                    day+=29;

                    continue;

                }

                day+=30;

            }

        }

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

    xixida...

    这样大概可以计算任何月的天数,咱是刚学到这里的新生,菜菜别骂

    2024-09-16 22:51:03

    共 1 条回复 >

C语言入门

C语言入门视频教程,带你进入编程世界的必修课-C语言

926206 学习 · 20797 问题

查看课程

相似问题