问答详情
源自:4-17 switch与if语句的应用

怎么算出来时190天?错在哪了啊

#include <stdio.h>

int main() 

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

    int year = 2008;

    int month = 8;

    int day = 8;

    /*

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

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

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

     */

    int zt;

    int sum;

    switch(month)

    {

        case 1:

            sum=0;

            break;

        case 2:

            sum=31;

            break;

        case 3:

            sum=59;

            break;

        case 5:

            sum=90;

            break;

        case 6:

            sum=120;

            break;

        case 7:

            sum=151;

            break;

        case 8:

            sum=181;

            break;

        case 9:

            sum=212;

            break;

        case 10:

            sum=243;

            break;

        default:

            printf("1");

            break;

    }

    sum += day;

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

        zt=1;

        else

        zt=0;

    if(zt==1&&month > 2)

        sum++;

        printf("2008年8月8日是该年的第%d天",sum);

return 0;

}


提问者:棹孤舟 2020-01-23 14:36

个回答

  • 没错我来过7324322
    2020-01-23 15:29:31
    已采纳

    你的case8  代码中的month值是181  你输入的代码错误了  没有case4  直接蹦到5了

  • 慕斯卡5475972
    2020-02-22 20:12:17

    你的case8  代码中的month值是181    你这段话我怎么看不懂,他的case8里写的是181啊怎么错了