int leap=year%4==0&&year%100!=0||year%400==0;是什么意思如果是闰年,那leap=多少,如果不是闰年,那leap又等于多少在C++中

来源:学生作业学帮网 编辑:学帮网 时间:2024/05/15 07:28:46

int leap=year%4==0&&year%100!=0||year%400==0;是什么意思
如果是闰年,那leap=多少,如果不是闰年,那leap又等于多少
在C++中

由于“=”赋值运算符优先级低且由右向左.
所以先看右边,也就是右边的式子的值赋值与leap.
右边有3个式子.式子的值为真则1,假则0.
式子1:如果year被4整除则真,式子2:year不被100整除则真,式子3:year被400整除则真.
三者关系:(式子1&&式子2)||式子3 式子关系顺序自左向右.
所以,被4整除而不被100整除,或者被400整除.
这是判断闰年的真假(真则1,假则0).
注意:别被楼上误导,leap是整型的!真则1,假则0