2025-07-24 12:48:11

C语言--判断一个年份是否是闰年(详解)

一.闰年的定义

闰年是指在公历(格里高利历)中,年份可以被4整除但不能被100整除的年份,或者可以被400整除的年份。简单来说,闰年是一个比平年多出一天的年份,即2月有29天。闰年的目的是校准公历与地球公转周期的差异,确保时间计算的准确性。举例来说,2024年是一个闰年,而2100年则不是闰年。

二.闰年与平年的区别

闰年与平年的主要区别在于二月的天数。

1. 平年:平年有365天,二月有28天。

2. 闰年:闰年有366天,二月有29天。

闰年与平年之间的差异是为了调整公历与地球公转周期之间的误差。地球公转周期约为365.2425天,而公历将一年定义为365天。通过在每4年中添加一个闰日(即在二月份增加一天),可以减少一部分误差。

然而,为了进一步纠正误差,规定了如下三条规则来确定闰年:

- 年份能被4整除,但不能被100整除的是闰年(例如2008年,2012年);

- 年份能被400整除的也是闰年(例如2000年);

- 年份能被100整除但不能被400整除的不是闰年(例如1900年不是闰年)。

这样的规则确保了时间计算的准确性,并且确定了闰年和平年之间的区别。

三.判断闰年的条件

能整除4且不能整除100,或能整除400(算法核心)

if (i % 4 == 0 && i % 100 != 0 || i % 400 == 0)//能整除4且不能整除100 或能整除400

{

printf("%d是闰年\n",i);

}

四.完整代码

#define _CRT_SECURE_NO_WARNINGS

#include //引用头文件

int main()

{

int i;

printf("请输入一个年份 :");

scanf("%d", &i);

if (i % 4 == 0 && i % 100 != 0 || i % 400 == 0)//能整除4且不能整除100 或能整除400

{

printf("%d年是闰年\n", i);

}

else

printf("不是闰年\n");

return 0;

}

五.运行结果

创作不易, 如果这份博客👍对你有帮助,可以给博主一个免费的点赞以示鼓励。

欢迎各位帅哥美女点赞👍评论⭐收藏⭐,谢谢!!!

如果有什么疑问或不同的见解,欢迎在评论区留言哦👀。

祝各位生活愉快⭐

tan30度等于多少
美哭了!10部高分自然纪录片惊艳镜头带你看遍祖国大美山河