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

已解决

#include <stdio.h>

int main() 

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

    int year = 2008;

    int month = 8;

    int day = 8;

    /*

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

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

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

     */

    int flag;

    int sum;

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

       flag=1;

   else if

       flag=0;

    

 switch(month)

    {

        case 1:

        sum=day;

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

        break;

        case 2:

        sum=day+31;

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

        break;

        case 3:

        sum=day+31+28;

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

        break;

        case 4:

        sum=day+31+28+31;

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

        break;

        case 5:

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

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

        break;

        case 6:

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

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

        break;

        case 7:

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

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

        break;

        case 8:

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

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

        break;

        case 9:

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

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

        break;

        case 10:

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

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

        break;

        case 11:

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

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

        break;

        case 12:

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

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

        break;

        default:

        printf("一年只有12个月");

        break;

    }

if(flag==1&&year>2)

sum++;

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

return 0;

}


提问者:坚持下去灬 2019-08-23 09:21

个回答

  • 坚持下去灬
    2019-08-23 09:40:05

    已发现问题,谢谢大家关注