闰年判断与日期计算
一.摘要
- 闰年的判断只需要记住一个口诀:“四年一闰,百年不闰,四百年再闰”,意思是“能被4整除且不能为100整除的年份”是闰年,“能被400整除的年份”也是闰年;
- 日期计算(计算某一日期是一年中的第几天),先判断是闰年还是非闰年,再求该日期是一年中的第几天,具体做法是建立个结构体或数组。
二.示例代码(C++描述)
1 /*闰年判断与日期计算*/ 2 #include<iostream> 3 #include<string> 4 #include<iomanip> 5 using namespace std; 6 struct { 7 int date[12] = { 31,29,31,30,31,30,31,31,30,31,30,31 }; 8 }run;//闰年 9 struct { 10 int date[12] = { 31,28,31,30,31,30,31,31,30,31,30,31 }; 11 }nrun;//非闰年 12 13 int main() { 14 int ye, mo, day; 15 cin >> ye >> mo >> day; 16 int sum = 0; 17 if (ye % 4 == 0 && ye % 100 != 0 || ye % 400==0) {//闰年 18 for (int i = 0; i < mo-1; i++) {//计算到前一个月 19 sum += run.date[i]; 20 } 21 } 22 else { 23 for (int i = 0; i < mo-1; i++) { 24 sum += nrun.date[i]; 25 } 26 } 27 sum += day;//加上日 28 cout << ye << "年" << mo << "月" << day << "日 是一年中的第" << sum << "天" << endl; 29 system("pause"); 30 return 0; 31 }
三.运行结果
四.总结
这应该是最简便的方法了,其他方法的相对繁琐~
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 使用C#创建一个MCP客户端
· ollama系列1:轻松3步本地部署deepseek,普通电脑可用
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 按钮权限的设计及实现