以判断闰年为例(年份可以被400整除或者年份可以被4整除但是不可以被100整除),可以看出逻辑与优先级大于逻辑或
#include <stdio.h>
int main(){
int year;
scanf("%d", &year);
if (year % 400 == 0 || year % 100 !=0 && year % 4 == 0){
printf("yes");
}else{
printf("no");
}
}
即:
year % 400 == 0 || year % 100 !=0 && year % 4 == 0
等价于
year % 400 == 0 || (year % 100 !=0 && year % 4 == 0)
扩展;
精确计算方法
普通年份能被4整除,且不能被100整除的,是闰年。( 如2004年就是闰年)
世纪年份能被400整除的是闰年。( 如2000年是闰年,1900年不是闰年)
对于数值很大的年份,这年如果能被3200整除,并且还能被172800整除的才是闰年。
来源于百度百科https://baike.baidu.com/item/%E9%97%B0%E5%B9%B4/27098