C++算法编程题:第几天

生产队的刘同学 2023-01-11 20:14:46

解题思路:

该题要求给出两个日期(yyyymmdd格式),计算它们之间相差多少天。可以通过每次增加第一个日期的天数来计算相差天数,最后输出答案。

具体实现方法如下:

首先,将输入的两个日期拆分为年月日,并用变量存储。
然后,使用一个循环来不断增加第一个日期的天数。在循环中,使用一个计数器来记录相差天数。
在循环中需要实现的部分就是如何增加第一个日期的天数。需要判断是否需要增加月数和年数。需要用到两个函数:isleap()和month[][]。isleap()用来判断当前年份是否为闰年。month[][]是一个二维数组,存储每个月的天数。如果当前年份是闰年,则month[i][1]为当前月的天数;如果不是闰年,则month[i][0]为当前月的天数。
在循环结束后,输出答案即可。
空白处代码应该为:

if (d1 > month[m1][isleap(y1)])
d1 = 1, m1++;
if (m1 > 12)
m1 = 1, y1++;

即:判断是否需要增加月数和年数。

...全文
6 1 打赏 收藏 举报
写回复
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
您可以前往 CSDN问答-编程语言 发布问题, 以便更快地解决您的疑问
相关推荐
发帖
第几天

10

社区成员

社区管理员
  • community_1818
加入社区
帖子事件
编辑了帖子 (查看)
2023-01-11 20:15
创建了帖子
2023-01-11 20:14
社区公告
暂无公告