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

news/2024/11/23 23:18:44/

一.闰年的定义

闰年是指在公历(格里高利历)中,年份可以被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<stdio.h>  //引用头文件
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);}elseprintf("不是闰年\n");return 0;
}

五.运行结果


http://www.ppmy.cn/news/1196965.html

相关文章

maven的settings.xml和pom.xml配置文件详解

一、配置文件 maven的配置文件主要有 settings.xml 和pom.xml 两个文件。 其中在maven安装目录下的settings.xml&#xff0c;如&#xff1a;D:\Program Files\apache-maven-3.6.3\conf\settings.xml 是全局配置文件 用户目录的.m2子目录下的settings.xml&#xff0c;如&#…

建筑能源管理(8)——合同能源管理

1、简介 合同能源管理是20世纪70年代中期在发达国家逐步发展起来的一种节能服务机制在国外简称EPC(Energy Performance Contracting)&#xff0c;在国内广泛地被称为EMC (Energy Management Contracting)&#xff0c;它由专门的节能服务公司(Energy Service Company,ESCO)在为…

ValueError: Attempt to convert a value (TFSequenceClassifierOutput

文章目录 1. 错误代码2. 问题分析及修改建议 1. 错误代码 result tf.nn.sigmoid(result)ValueError: Attempt to convert a value (TFSequenceClassifierOutput(lossNone, logitsarray dtypefloat32), hidden_statesNone, attentionsNone)) with an unsupported type (<cl…

【vscode】Window11环境下vscode使用Fira Code字体【教程】

【vscode】Window11环境下vscode使用Fira Code字体【教程】 文章目录 【vscode】Window11环境下vscode使用Fira Code字体【教程】1. 下载Fira Code字体2. 安装Fira Code字体3. 配置vscode4. 效果如下Reference 如果想要在Ubuntu环境下使用Fira Code字体&#xff0c;可以参考我的…

swift语言下SurfGen库做的爬虫是什么样的 ?

Swift语言并没有内置的爬虫库&#xff0c;但是你可以使用第三方库来实现爬虫功能。其中比较常用的是Alamofire和SwiftyJSON。Alamofire是一个基于Swift语言的HTTP网络库&#xff0c;可以用来发送HTTP请求和接收HTTP响应。而SwiftyJSON则是一个用于处理JSON数据的Swift库&#x…

python实现从字符串中识别出省市区信息

从字符串中识别出省市区的信息分别存储,是我们经常会碰到的问题。如果用分词的方法去匹配获取比较麻烦,cpca包提供了便捷的调用函数transform。只要把含省市区的信息放进去,即可返回标准的含省市区的数据框。    本文详细阐述如何安装cpca包、transform函数参数定义,以及…

0基础学习PyFlink——使用datagen生成流式数据

大纲 可控参数字段级规则生成方式数值控制时间戳控制 表级规则生成速度生成总量 结构生成环境定义行结构定义表信息 案例随机Int型顺序Int型随机型Int数组带时间戳的多列数据 完整代码参考资料 在研究Flink的水位线&#xff08;WaterMark&#xff09;技术之前&#xff0c;我们可…

Bytedance揭秘OpenAI大模型: GPT-3到GPT-4进化路径

文章目录 探秘GPT-3到GPT-4进化之路1、SFT&#xff1a;早期GPT进化的推动者2、RLHF和SFT&#xff1a;编码能力提升的功臣3、代码加入预训练&#xff0c;对推理帮助最大4、“跷跷板”现象 论文地址项目链接Reference GPT-Fathom: Benchmarking Large Language Models to Deciphe…