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

如题所述

第1个回答  2022-11-23
C语言如何判断是闰年,闰年判断条件
不等价,因为判断闰年的标准是:1、能整除4且不能整除100 2、能整除400

你的意思是:

每4年有个闰年<——>1896是闰年,4年后1900也是闰年<——>除以4就是闰年

但严格上讲,"每4年一个闰年"这说法不严谨。应该是四年一闰,百年不闰,四百年再闰。

为什么呢?

1、产生闰年原因:地球绕太阳执行周期为365天5小时48分46秒(合365.24219天)即一回归年(tropical year)。公历的平年只有365日,比回归年短约0.2422 日,所余下的时间约为四年累计一天,故四年于2月加1天,使当年的历年长度为366日,这一年就为闰年。

2、但是,上面演算法又有了一个问题。就是0.2422*4=0.9688,比一天还差0.0322天,每4年差0.0322天不算多,但每400年就会差了约3天。即是说,假如每4年一个闰年,那么每400年就会有100个闰年,然后会多算了3天。

所以,就规定了每四百年中要减少三个闰年。公历年份是整百数的,必须是400的倍数的才是闰年,不是400的倍数的,虽然是100的倍数,也是平年。

综合以上2点,就有了现有的闰年判断标准。
平闰年怎么区分?
判定公历闰年遵循的规律为: 四年一闰,百年不闰,四百年再闰.

公历闰年的简单计算方法:(符合以下条件之一的年份即为闰年)

1。能被4整除而不能被100整除。(如2004年就是闰年,1900年不是)

2。能被400整除。(如2000年是闰年)

下面有个简单的方法判断是否是闰年。

(1)判断年份是否是闰年,只须看年份的末两位,如果末两位数能整除4,那么就是闰年,反之,就不是。

(2)遇到末两位数都是0的年份,我们就看年份的前两位数;如果前两位数能整除4,那么就是闰年,反之,就不是。

(3)如遇到2004年末两位是04的,可以直接把它看做1位数,如果这个数能整除4,那么就是闰年,反之,就不是。
怎样区分平年和闰年?
4的倍数的年份就是闰年,比如,2008年就是闰年,+4,即2012年也是闰年~~

闰年的二月份有29天,平年都是28天~~是因为平年的二月份其实是28天零出来几个小时,三个平年之后,那多余出来的几个小时加和之后就正好凑足一整天,也就是闰年的2月份多出来的那一天!
怎样区分闰年与非闰年
如果那年的年份能除以4没有余数,那么那年就是闰年,如果不行,就是平年.

比如说,2004,2008,2012,它们都能除尽4,没有余数,所以都是闰年.

然后闰年是366天,平年是365天,相差的一天主要是在2月,闰年有29号,平年没有.
什么是平年?什么是闰年?平年与闰年怎样区分??
一般的,能被4整除的年份是闰年,不能被4整除的年份是平年.如:1988年2008年是闰年;2005年2006年2007年是平年.但是如果是世纪年(也就是整百年),就只有能被400整除才是闰年,否则就是平年.如:2000年就是闰年,1900年就是平年

闰年的2月有29天,平年的2月只有28天.
怎么判断一个年份是不是闰年
1、普通情况求闰年只需除以4可除尽即可 年/4余数为0

2、如果是100的倍数但不是400的倍数,那就不是闰年了,即末两位都是零的整除400才行

像1700、1800、1900、2100都不是闰年,但是2000、2400是的.

3、2100年不是闰年,闰年不是象你们所说以加4为判断闰年标准的,所以闰年有些4年一次,但是有些是8年一次的.例如:1896年是闰年,但1900年不是,到1904年才是闰年.
相似回答