题目描述
小明同学有着严重的拖延症,每次老师布置的作业都要到快要截止的时候才会开始动手完成,因此现在有着许许多多的作业完成。你是小明的好朋友,请帮小明找出最紧急的作业(即最早截止的作业)。
要求如下:
1.定义一个日期类Date,包括三个protected成员数据year, month, day;
2.定义一个时间类Time,包括三个protected成员数据hour, minute, second(24小时制);
3.以Date类和Time类为基类,创建一个作业类Work,包括新增成员:int id; // 作业的id
4.定义一个友元函数bool before(const Work& w1,const Work& w2); // 判断作业w1的时间是否早于作业w2的时间。
输入
输入若干作业,每个作业占一行(作业id 年 月 日 时 分 秒)
当输入0时结束,相应的结果不要输出。
输出
时间最靠前的作业。

灵感来源

我曾经在做这道题目是也是为日期的比较犯不着头脑,(实在不想用if,else if去分情况讨论),而后在编程老师的指点下,我发现可以将年月日转换为一个具体的数值进行比较。如2024/05/25可转换为2024*10000+5*100+25*1;这一步为解题的关键所在。

最低0.47元/天 解锁文章
3568

被折叠的 条评论
为什么被折叠?



