条件(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么?
1896是闰年吧 ?那么四年后应该也是闰年呀 1900为什么不是闰年呢?
追答并不是闰年的4年之后又是闰年。闰年是按照规则计算出来的。
#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;}