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

我看了大家的答案,自己总结了,包含了任何年份任何日子的天数输出;如下:


#include <stdio.h>

int main()

{

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

    int year = 2008;

    int month = 8;

    int day = 8;

    int i, days =0, sum = 0;

    /*

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

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

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

     */

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

    {

        switch(i)

        {

            case 4:

            case 6:

            case 9:

            case 11:

            days=30;

            break;

            case 2:

            days=28;

            break;

            default :

            days=31;

            break;

        }

        sum =sum+days;

    }

    if(year%4==0 && month>3)

    {

        sum=sum+day+1;

    }

    else

    {

        sum =sum+day;

    } 

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

return 0;

}


提问者:慕移动1292074 2020-09-05 10:45

个回答

  • 慕的地5423980
    2020-09-11 15:41:31

    闰年判断条件是:year%400==0||(year%4==0)&&(year%100!=0);