提问一道关于C语言的程序,题目是:2000---2050年的那一年是闰年?

来源:百度知道 编辑:UC知道 时间:2024/06/15 06:27:30
备注:1.能被4整除的但不能被100整除的是闰年.
2.能被100整除同时能被400整除的是闰年,请问师哥师姐这道程序该怎么做啊! 很急,盼最佳程序答案!谢谢大家了!

#include<stdio.h>
main()
{
int i;
for(i=2000;i<=2050;i++)
if(i%4==0&&i%100!=0||i%400==0)
printf("%d ",i);
}

闰年是为了弥补因人为历法规定造成的年度天数与地球实际公转周期的时间差而设立的。补上时间差的年份,即有闰日的年份为闰年

公历闰年判定遵循的规律为: 四年一闰,百年不闰,四百年再闰.

公历闰年的简单计算方法(符合以下条件之一的年份即为闰年)
1。能被4整除而不能被100整除。
2。能被400整除。

详情如下:

闰年(leap year),指在公历(格里历)或夏历中有闰日的年份,以及在中国旧历农历中有闰月的年份。
地球绕太阳运行周期为365天5小时48分46秒(合365.24219天),即一回归年(tropical year)。公历的平年只有365日,比回归年短约0.2422 日,每四年累积约一天,把这一天加于2月末(2月29日),使当年的历年长度为366日,这一年就为闰年。 按照每四年一个闰年计算,平均每年就要多算出0.0078天,经过四百年就会多出大约3天来,因此,每四百年中要减少三个闰年。所以规定公历年份是整百数的,必须是400的倍数才是闰年,不是400的倍数的就是平年。比如,1700年、1800年和1900年为平年,2000年为闰年。闰年的计算,归结起来就是通常说的:四年一闰;百年不闰,四百年再闰;千年不闰,四千年再闰;万年不闰,五十万年再闰。

需要注意的是,现在的公历是根据罗马人的"儒略历"改编而得。
由于当时没有了解到每年要多算出0.0078天的问题,从公元前46年,到16世纪,一共累计多出了10天。为此,当时的教皇格雷果里十三世,将1582年10月5日人为规定为10月15日。并开始了新闰年规定。此后,平均每年长度为365.2425天,约4年出现1天的偏差。

夏历的平年只有354日,比12个朔望月短0.