给你一个口诀,判断闰年的。
4年一闰,百年不闰,400年再闰
下面给出算法个题目
#include
int main()
{
int year;
scanf("%d",&year);
if((year%4==0&&year%100!=0)||(year%100==0&&year%400==0))
printf("Yes\n");
else
printf("No\n");
return 0;
}
因为这就是闰年的规律,地球绕太阳运行周期为365天5小时48分46秒(合365.24219天)即一回归年。公历的平年只有365日,比回归年短约0.2422 日,所余下的时间约为四年累计一天,故四年于2月加1天,使当年的历年长度为366日,这一年就为闰年。现行公历中每400年有97个闰年。按照每四年一个闰年计算,平均每年就要多算出0.0078天,这样经过四百年就会多算出大约3天来。因此每四百年中要减少三个闰年。所以公历规定:年份是整百数时,必须是400的倍数才是闰年;不是400的倍数的年份,即使是4的倍数也是平年。
因为历法规定的,能被4整除且不能被100整除的是闰年,能被400整除的也是闰年。写作:
((year%4 == 0) && (year %100 != 0)) || (year % 400 == 0)
#include
void main()
{
int y;
for (y=2000;y<=2500;y=y+1)
{
if (y%4==0&&y%100!=0)
printf("%d\n",y);
else if(y%400==0)
printf("%d\n",y);
}
}
两个条件1.被4整除且不能被100整除2.能被400整除