(year%4 == 0) 是否足够判断润年?2000 年是闰年吗?

2025-03-04 12:18:41
推荐回答(3个)
回答1:

这个测试并不足够 (2000 年是闰年)。对于当前用的格里高力历法, 完整的表达式为:
year % 4 == 0 && (year % 100 != 0 || year % 400 == 0)
详情请参阅一本好的天文历法的书或其它参考资料。预防无休止的辩论; 那些主张还有一个 4000 年规则的参考资料是错的。

回答2:

(year%4 == 0) 并不能判断所有年份是否是闰年。
整百年份,是除以400,而不是除以4。
比如:2100年,虽然(2100%4==0),但不是闰年,因为:(2100%400!=0)。
因此,容易得出2000年,是闰年。

回答3:

year%4 == 0不是判断是否为润年的唯一条件,还应该有一个条件 year%100!=0
2000不是润年.
下面是一段C语言判断润年的写法.提供参巧一下.
#include
void main()
{
int year,leap;
scanf("%d",&year);
if(year%4==0)
{
if(year%100!=0)
leap=1;
else
{
if(year%400==0)
leap=1;
else
leap=0;
}
}
if(leap==1)
printf("%d是闰年\n",year);
else
printf("%d不是闰年\n",year);}