解题思路:
定义一个#define LEAP_YEAR(n),用里面的表达式的结果来判断是否是闰年
首先知道闺年的条件:(1)四年一闰百年不闰:即如果year能够被4整除,但是不能被100整除,则year是闰年。
(2)每四百年再一闰:如果year能够被400整除,则year是闰年。
写出表达式:
(n%4==0&&n%100!=0)||n%400;
注意事项:
(n%4==0&&n%100!=0)||n%400; n%4==0&&n%100!=0这个表达式最好加个括号括起来,否者会警告,但是不影响实际结果。注意到此表达式有&&和||,&&是前面表达式为真,才继续判断,为假就不继续下面的
表达式。
||是前面表达式为假,才继续判断,为真就不继续下面的
表达式。所以说加不加括号结果不影响。但是为了美观和好理解,不发生警告的情况下,建议加上括号。定义一个新的变量t,把define LEAP_YEAR(n)的值赋给t,判断t的值,进一步判断是否是闰年。
参考代码:
#include<stdio.h>
#define LEAP_YEAR(n) (n%4==0&&n%100!=0)||n%400;
int main(){
int n,t;
scanf("%d",&n);
t=LEAP_YEAR(n);
if(t==0) printf("L");
else printf("N");
return 0;
}
0.0分
0 人评分
C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:
一点编程也不会写的:零基础C语言学练课程
解决困扰你多年的C语言疑难杂症特性的C语言进阶课程
从零到写出一个爬虫的Python编程课程
只会语法写不出代码?手把手带你写100个编程真题的编程百练课程
信息学奥赛或C++选手的 必学C++课程
蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程
手把手讲解近五年真题的蓝桥杯辅导课程
发表评论 取消回复