year闰年的C 语言表达式,一个判断不是闰年c表达式

最近由于工作需要,一直在学习c语言,接触到了一些表达式很是经典,特详细说明一下。

(year%4!=0)||(year%100==0&&year%400!=0)

是判断year是否“不是闰年”。

闰年一般两种情况:

a,要被4整除,但不能被100整除。如2012年。

b,能被100整除的年份,还能被400整除才是闰年。例如1600年,但1900就不是闰年,因为1900能被100整除,但不能被400整除。

相反一个年份不是闰年的两种情况:

a,不能被4整除。即对应代码(year%4!=0)

b,能被100整除,year%100==0,但不能被400整除year%400!=0。两个是且的关系,因此对应代码(year%100==0 && year%400!=0)

上面a,b两种情况是“或”的关系,也就是满足其中之一就不是闰年。因此合起来代码为

(year%4!=0) || (year%100==0 && year%400!=0)

当year不是闰年时,上面整个表达式的值为1,是闰年时,表达式值为0

程序判断时,是先判断||的左边,即(year%4!=0),若满足则表达式返回为1,||右边不用判断。若不满足,继续判断||的右边(year%100==0 && year%400!=0),对于&&,也是先判断左边year%100==0,若其不满足,则返回为0,右边year%400!=0将不再判断,否则继续判断year%400!=0,若满足则返回为1,否则返回为0。

—————————————————————————————————

特别声明:--

一、本文为原创,著作权及使用权为(作者笔名:闪电cto)本人所有。­

三、本文只供互联网上的读者分享,不供共享范畴,希知。­

四、未经许可严禁对本文作修改、节选、断章性质的处理。­

五、可转载,但必须注明原文章首发的出处网址,及文章作者,严禁复制。­

六、如若转摘用于杂志网络媒体新闻,必须通知作者得到允许后方可,需收稿费。­

七、作者联系信息:QQ:306718122   邮箱

——————————————————————————————

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值