C#中判断指定的年份是否为闰年

时间:2021-05-02

有很多人认为,只要年份能被4整除就是闰年了,实际上不是这样的,判断一个年份是否为闰年有两个条件:

(1)如果一个年份能被400除尽,则其是闰年;

(2)如果年份能被4整除,而不能被100整除,则该年份为闰年。

为什么年份被4整除而不能被100整除时才是闰年呢?下面首先介绍一个常识,然后再给出具体的算法。

关于公历闰年是这样规定的:地球绕太阳公转一周叫做一回归年,一回归年长365日5时48分46秒。因此,公历规定有平年和闰年,平年一年有365日,比回归年短0.2422日,四年共短0.9688日,故每四年增加一日,这一年有366日,就是闰年。但四年增加一日比四个回归年又多0.0312日,400年后将多3.12日,故在400年中少设3个闰年,也就是在400年中只设97个闰年,这样公历年的平均长度与回归年就相近似了。由此规定:年份是整百数的必须是400的倍数才是闰年,例如1900年、2100年就不是闰年。

明白了闰年的由来,则再给出具体的算法:

/// <summary>判断给定的年份是否是闰年</summary>/// <param name="iYear">给定的年份值</param>/// <returns>true是闰年,false不是闰年</returns>public bool IsLeapYear(int iYear){ if((iYear % 400 == 0)||(iYear % 4 == 0 &&iYear % 100 != 0)) { return true; } else { return false; }}

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章