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

大神们,这道第几天的题 可以这样做吗?


#include <stdio.h>
int main()
{
    /* 定义需要计算的日期 */
    int year = 2008;
    int month = 8;
    int day = 8;
    int i,sum=0;
    if(year%4==0)
    {
        year=0;  
    }
    else
    {
        year=1;
    }
    switch(year)
    {
        case 0:
        for(i=1;i<8;i++)
        {
            if(i%2==0)
            {
                sum+=30;
            }
            else
            {
                sum+=31;
            }
       
        }
        sum=sum-1+8;
        printf("2008年8月8日是2008年的第%d天",sum);
        break;
        case 1:
        for(i=1;i<8;i++)
        {
            if(i%2==0)
            {
                sum+=30;
            }
            else
            {
                sum+=31;
            }
       
        }
        sum+=8;
        printf("2008年8月8日是2008年的第%d天",sum);
        break;
    }

 return 0;
}


提问者:笙歌忆 2019-10-06 17:47

个回答

  • 山高丿路远
    2019-10-21 14:12:38

    可以的,不过你这太麻烦了可以改进,你首先判断了是平年还是闰年,可以直接把switch语句写在if语句里面在进行判断