定义时间类Time,包括私有成员变量hour(int)、minute(int)、second(int);
成员两数set_time(int h,int m,ints)将读入的3个整数规范化后给3个成员变量赋值,使得
second满60向minute进1,并规范化至[0,59]:minute满60向hour进1,并规范化至[0,59];hour 满24则规范化至[0,23]:
成员两数show_time(ofstream &output)读取3个成员变量,格式化为80:00:00形式后,输出到文件中:
该回答引用chatgpt
C++代码如下:
#include <iostream>
#include <fstream>
using namespace std;
class Time {
private:
int hour;
int minute;
int second;
public:
void set_time(int h, int m, int s) {
hour = h;
minute = m;
second = s;
// 规范化时间
while (second >= 60) {
second -= 60;
minute++;
}
while (minute >= 60) {
minute -= 60;
hour++;
}
while (hour >= 24) {
hour -= 24;
}
}
void show_time(ofstream &output) {
// 格式化输出到文件中
output << ((hour < 10) ? "0" : "") << hour << ":";
output << ((minute < 10) ? "0" : "") << minute << ":";
output << ((second < 10) ? "0" : "") << second << endl;
}
};
int main() {
Time t;
int h, m, s;
cout << "请输入时间:" << endl;
cin >> h >> m >> s;
t.set_time(h, m, s);
ofstream output("output.txt");
t.show_time(output);
output.close();
cout << "已输出到文件output.txt中" << endl;
return 0;
}