题解 | #获得月份天数#

获得月份天数

https://www.nowcoder.com/practice/13aeae34f8ed4697960f7cfc80f9f7f6

#include<stdio.h>
int main()
{
    int a,b;//定义a为年份,b为月份
    while(scanf("%d %d\n",&a,&b)!=EOF)//多组输入标配,别忘了加换行符\n
    {
        if(b==2)//因为2月最特殊
        {
            if(a%4==0&&a%100!=0||a%400==0)//判断是否为闰年
            {
                printf("29\n");//是闰年则输出29
            }
            else 
            {
                printf("28\n");//不是闰年则输出28
            }
        }
        else //其它月份用switch函数
        {
            switch(b)//判断对象是月份
            {//4,6,9,11月为30天,其余月份除刚算的2月外,均为31天
                case 4://满足4,就进入,碰不到break就一直往下,最终输出30
                case 6:
                case 9:
                case 11:printf("30\n");break;
                default:printf("31\n");break;
            }
        }
    }
    return 0;
}

总结:

月份看左右拳一样

闰年判断能被4整除但不能被100整除还有是能被400整除都算闰年

全部评论

相关推荐

点赞 收藏 评论
分享
牛客网
牛客企业服务