随笔 - 25,  文章 - 0,  评论 - 0,  阅读 - 2424

一.问题描述:

定义一个时间类,小时和分钟是其两个私有成员数据。输入一个起始时间和一个结束时间(起始时间早于结束时间),通过运算符重载-(减号),计算这两个时间相隔多少分钟。说明:这两个时间在同一天之内,且采用24小时计时分式,即从00:00-23:59。

二.代码实现:

复制代码
#include<iostream>
using namespace std;
class Time {
private:
    int hour;
    int minute;
public:
    Time(int h = 00, int m = 00) {
        hour = h;
        minute = m;
    }
    int friend operator- (Time p, Time q);
};
int operator- (Time q, Time p) {
    int c = 0;
    int d = 0;
    if (p.minute < q.minute|| p.minute == q.minute) {
        d = q.hour - p.hour;
        c = q.minute - p.minute + 60 * d;
        return c;
    }
    else {
        d = q.hour - p.hour - 1;
        c = 60 + q.minute - p.minute + 60 * d;
        return c;
    
    }
}
int main() {
    int a, b, c, d;
    while (cin >> a >> b >> c >> d) {
        if (a == 00 && b == 00 && c == 00 && d == 00)
            break;
        int difference;
        Time p1(a, b);
        Time p2(c, d);
        difference = p2 - p1;
        cout << difference << endl;



    }
    return 0;
}
复制代码

 

posted on   标志蛋挞  阅读(153)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· winform 绘制太阳,地球,月球 运作规律
· 上周热点回顾(3.3-3.9)
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

点击右上角即可分享
微信分享提示