搜索
编程论坛
→
开发语言
→
『 C语言论坛 』
→ 判断闰年代码
标题:
判断闰年代码
只看楼主
持剑的战士
等 级:
新手上路
帖 子:30
专家分:3
注 册:2019-12-6
结帖率:
62.5%
楼主
已结贴
√
问题点数:20 回复次数:6
判断闰年代码
这行代码应该怎么解释?我知道它是判断是否为闰年,但我不懂它如何运行的?
leapyear=year%4==0&&year%100!=0||year%400==0;
搜索更多相关主题的帖子:
闰年
year
判断
||
代码
2019-12-09 14:19
纯蓝之刃
等 级:
贵宾
威 望:
76
帖 子:554
专家分:3690
注 册:2019-7-29
第
2
楼
得分:2
leapyear=(((year%4==0)&&(year%100!=0))||(year%400==0));
如果年份是4的整数倍且不是四百的整数倍 或者 年份是400的整数倍 则leapyear的值为1,否则为0.
一沙一世界,一花一天堂。无限掌中置,刹那成永恒。
2019-12-09 16:15
bcbbcclbbc
等 级:
贵宾
威 望:
11
帖 子:194
专家分:528
注 册:2019-8-15
第
3
楼
得分:4
year%4==0 && year%100!=0 || year%400==0 结果:1闰年,0平年
0 不计算 不计算 0 (不是闰年)
1 0 0 0 (year是4的倍数,是100的倍数但不是400的倍数)
1 0 1 1 (year是4的倍数,是100的倍数也是400的倍数)
1 1 0 1 (year是4的倍数,不是100的倍数)
[此贴子已经被作者于2019-12-9 16:56编辑过]
2019-12-09 16:48
Jason_
来 自:浙江台州
等 级:
论坛游民
帖 子:88
专家分:66
注 册:2019-7-14
第
4
楼
得分:2
翻译到人话就是:
闰年是 年份能被4整除而且年份不是100的倍数 或者 年份能被400整除(成立leapyear为1,否则leapyear为0)
[此贴子已经被作者于2019-12-9 18:53编辑过]
2019-12-09 18:50
自学的数学
等 级:
贵宾
威 望:
46
帖 子:967
专家分:4146
注 册:2017-11-15
第
5
楼
得分:8
由于“=”赋值运算符优先级低且由右向左。
所以先看右边,也就是右边的式子的值赋值与leap。
右边有3个式子。式子的值为真则1,假则0。
式子1:如果year被4整除则真,式子2:year不被100整除则真,式子3:year被400整除则真。
三者关系:(式子1&&式子2)||式子3 式子关系顺序自左向右。
所以,被4整除而不被100整除,或者被400整除。
这是判断闰年的真假(真则1,假则0)。
2019-12-09 21:40
宁缺T
等 级:
新手上路
帖 子:21
专家分:8
注 册:2019-9-12
第
6
楼
得分:4
//当year为闰年时返回true(1),否则返回false(0)
bool isLeap(int year){
return (year%4==0&&year%100!=0)||(year%400==0);
}
leapyear=isLeap(y1);
------------------------
因为这是C99新加入的关键字,要加入#include<stdbool.h>这个头文件,更详细的内容你可以自己找找。
Stay hungry,Stay foolish.
2019-12-11 10:49
持剑的战士
等 级:
新手上路
帖 子:30
专家分:3
注 册:2019-12-6
第
7
楼
得分:0
回复 6楼 宁缺T
谢谢大佬
2019-12-11 16:02
7
1/1页
1
参与讨论请移步原网站贴子:
https://bbs.bccn.net/thread-498299-1-1.html
关于我们
|
广告合作
|
编程中国
|
清除Cookies
|
TOP
|
手机版
编程中国
版权所有,并保留所有权利。
Powered by
Discuz
, Processed in 0.436951 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved