当前位置: 首页 > web >正文

【GESP真题解析】第 4 集 GESP一级 2023 年 3 月编程题 1:每月天数

【GESP真题解析】GESP一级 2023 年 3 月编程题 1:每月天数.png
大家好,我是莫小特。
这篇文章给大家分享 GESP 一级 2023 年 3 月编程题第 1 题:每月天数。

题目链接

洛谷链接:B3835 每月天数

image.png

一、完成输入

根据题目要求,我们需要输入两个整数,分别表示一个日期的年份和月份。
年份 A 的范围在 2000 到 3000 之间,月份 B 的范围在 1 到 12 之间。
用 cin 就可以实现。

int A, B;
cin >> A >> B;  // 输入年份和月份

完成输入后,我们就要对题目进行分析,写算法代码。

二、分析题意

根据题目要求,我们计算给定年份和月份对应的天数。

考虑到闰年对2月天数的影响,我们首先需要判断年份是否为闰年。

闰年判断:

(1)能被400整除的是闰年。
(2)能被4整除且不能被100整除的也是闰年。

bool isrun = false;  // 闰年条件// 判断年份是否为闰年
if ((A % 400 == 0) || ((A % 100 != 0) && (A % 4 == 0)))
{isrun = true;  // 符合闰年条件
}

每月天数:

  • 一月(1月):31天
  • 二月(2月):28天(平年),29天(闰年)
  • 三月(3月):31天
  • 四月(4月):30天
  • 五月(5月):31天
  • 六月(6月):30天
  • 七月(7月):31天
  • 八月(8月):31天
  • 九月(9月):30天
  • 十月(10月):31天
  • 十一月(11月):30天
  • 十二月(12月):31天
// 判断月份的天数
if (B == 1 || B == 3 || B == 5 || B == 7 || B == 8 || B == 10 || B == 12)
{cout << 31 << endl;  // 31天的月份
}
else if (B == 4 || B == 6 || B == 9 || B == 11)
{cout << 30 << endl;  // 30天的月份
}

再加上闰年的判断。

else if (isrun == true)
{cout << 29 << endl;  // 闰年的2月29天
}
else
{cout << 28 << endl;  // 非闰年的2月28天
}

三、验证数据

提交到网站中,通过!

四、完整代码

完整代码如下:

#include<iostream>
#include<bits/stdc++.h>
using namespace std;int main()
{int A, B;cin >> A >> B;  // 输入年份和月份bool isrun = false;  // 闰年条件// 判断年份是否为闰年if ((A % 400 == 0) || ((A % 100 != 0) && (A % 4 == 0))){isrun = true;  // 符合闰年条件}// 判断月份的天数if (B == 1 || B == 3 || B == 5 || B == 7 || B == 8 || B == 10 || B == 12){cout << 31 << endl;  // 31天的月份}else if (B == 4 || B == 6 || B == 9 || B == 11){cout << 30 << endl;  // 30天的月份}else if (isrun == true){cout << 29 << endl;  // 闰年的2月29天}else{cout << 28 << endl;  // 非闰年的2月28天}return 0;
}

如果对你有帮助,感谢点赞关注收藏哦~

http://www.xdnf.cn/news/6331.html

相关文章:

  • c#队列及其操作
  • Redis缓存穿透、雪崩、击穿的解决方案?
  • WinFrom 使用 LiveCharts 实现动态折线图
  • 常用正则记录
  • 抽奖系统-奖品-活动
  • 外贸礼品禁忌
  • 【SSL证书系列】SSL证书工作原理解读
  • 日语学习-日语知识点小记-构建基础-JLPT-N4阶段(21):复习
  • 【测试开发知识储备】之Jacoco(Java Code Coverage)
  • SVNAdmin管理使用教程
  • Problem E: List练习
  • 力扣刷题(第二十六天)
  • 运筹说 第136期 | 其他类型对策简介之合作对策
  • BGP联邦和发射试验
  • Linux wlan 单频段 dual wifi创建
  • git中忽略文件.gitignore文件的用法
  • 2025年AI开发者在开发者占比?
  • 进阶2_1:QT5多线程与定时器共生死
  • 深度剖析火狐飞鸟 MIP 泛目录程序:技术原理与实践应用
  • .NET程序启动就报错,如何截获初期化时的问题json
  • E. 23 Kingdom【Codeforces Round 1024 (Div. 2)】
  • 1669上什么课
  • day29-IO(其他流)
  • Java基础(多线程1)
  • 鸿蒙-5.1.0-release构建编译环境
  • 分割等和子集习题分析
  • HCIP(OSPF的拓展配置及选路规则)
  • 矩阵乘法的优化与复杂度分析
  • 一个日志量突增的问题分析处理经历
  • 普通IT的股票交易成长史--20250514复盘