题解
2025-12-21 13:13:00
发布于:浙江
10阅读
0回复
0点赞
这道题需判断平闰年和不同月份,很简单实际脑子都要转晕了。
首先判断是否为闰年。如果年份不是100的倍数并且是400的倍数,或者年份既是100的倍数又是400的倍数,则为闰年,我们得到以下代码:
if(n%4==0&&n%100!=0||n%400==0){
//中间判断
}
然后,我们知道闰年中,1,3,5,7,8,10,12月是31天,4,6,9,11月则是30天,2月29天,使用多分支语句写代码,可得:
if(m==1||m==3||m==5||m==7||m==8||m==10||m==12)cout<<31;//如果是1,3,5,7,8,10,12月
else if(m==2)cout<<29;//如果是2月
else cout<<30;//不是1,2,3,5,7,8,10,12月的判断
接下来是平年的情况。
1月,3之12月,与闰年一样,这里不展开分析。2月不同,平年的2月只有28天。这就是普通人和贵族的区别
可知:
if(m==1||m==3||m==5||m==7||m==8||m==10||m==12)cout<<31;
else if(m==2)cout<<28;
else cout<<30;
整道题便完成了。
当然,也可以先判断是否为2月,如果是,再判断平闰年;不是的话,再分辨月份即可。
总结:本题属于多分支类题目,稍显繁琐,需要有步骤的慢慢分析。
这里空空如也







有帮助,赞一个