c++设计一个Time类,可以设置时间,进行时间的加减运算,有24小时制和12小时制
时间: 2023-06-20 07:04:19 浏览: 102
C++时间设计
下面是一个可能的Time类的实现,包括设置时间、加减运算和12/24小时制的转换。其中,时间的表示方式为小时数和分钟数,采用24小时制。
```c++
#include <iostream>
using namespace std;
class Time {
private:
int hour, minute;
public:
Time(int h = 0, int m = 0) {
hour = h;
minute = m;
}
void set_time(int h, int m) {
hour = h;
minute = m;
}
void add_time(int h, int m) {
minute += m;
hour += h + minute / 60;
minute %= 60;
hour %= 24;
}
void sub_time(int h, int m) {
minute -= m;
hour -= h + minute / 60;
minute = (minute + 60) % 60;
hour = (hour + 24) % 24;
}
void show_time_24() {
printf("%02d:%02d\n", hour, minute);
}
void show_time_12() {
if (hour == 0)
printf("12:%02d AM\n", minute);
else if (hour < 12)
printf("%d:%02d AM\n", hour, minute);
else if (hour == 12)
printf("12:%02d PM\n", minute);
else
printf("%d:%02d PM\n", hour - 12, minute);
}
};
int main() {
Time t(10, 30);
t.show_time_24();
t.show_time_12();
t.add_time(2, 45);
t.show_time_24();
t.sub_time(1, 15);
t.show_time_12();
return 0;
}
```
该程序的输出结果为:
```
10:30
10:30 AM
13:15
11:00 AM
```
阅读全文