10
社区成员
发帖
与我相关
我的任务
分享
解题思路:
该题要求给出两个日期(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++;
即:判断是否需要增加月数和年数。