C语言如何判断是闰年,闰年判断条件

条件(year%4==0&&year%100!=0)||year%400==0,我觉得这个条件等价于year%4==0,后面的都可以不要,当条件只有year%4==0&&year%100!=0,像2000年就不是闰年了,加上||year%400==0满足其中一个就是了,请问大侠们,(year%4==0&&year%100!=0)||year%400==0,等价于year%4==0么?

第1个回答  2018-03-20
当然不等。1900、2100年都不是闰年,但year%4==0却成立!
第2个回答  2012-08-22
闰年:是指可以被 4 整除时且不可以被 100 整除,或可以被 400 整除的年份追问

1896是闰年吧 ?那么四年后应该也是闰年呀 1900为什么不是闰年呢?

追答

并不是闰年的4年之后又是闰年。闰年是按照规则计算出来的。

第3个回答  2018-04-16
“!=”是不等于符号呀,year%100!=0是判断year除100余数是否为0,余数不等于0的话输出为1,余数等于0 输出为0。
第4个回答  2018-03-29

#include<stdio.h>


void main()


{
int year,a;


printf("请输入年份:");


scanf("%d",&year);


if((year/4==0&&year/100!=0)||(year/400==0)) a=1;
else a=0;


if(a=1)


printf("\n%d此年是闰年\n",year);


else printf("%d此年非闰年\n",year);

1.你要清楚什么样的年份才是闰年(能被4整除且不能被100整除或者能被400整除的。

2. 判断语句
if(  ((0 == year%4)&&(0 != year%100)) ||(0 == year %400) )
{//满足该条件的yeat就是闰年。}
以下是源程序代码:
#include <stdio.h>

int main (void) {

int year;

printf ("please a year:");
scanf ("%i",&year);

if((year%4==0 && year%100!=0)||year%400==0){  printf ("%i is a leap year!",year);}else{  printf ("%i is not a leap year!",year);}
return 0;}

本回答被网友采纳
第5个回答  2018-04-04
小哥哥 or 小姐姐 or 小弟弟 or 小妹妹:
你好;

你怎么可以这样说呢,逻辑上咋能这样推导呢;
我就给你举个反例吧,你猜1900年是平年还是闰年呢?
注:1900 % 4 == 0 && 1900 % 100 == 0 && 1900 % 400 != 0.
相似回答