Problem F: 时间类的构造和输出

Description

封装一个时间类Time,用于时间处理的相关功能,支持以下操作:

1. Time::Time(int,int,int)构造方法:传递时分秒的三个参数构造对象。

2. Time::showTime()方法:输出“hh:mm:ss”,不足两位的要前面补0。

你设计一个时间类Time,使得main()函数能够正确运行。

函数调用格式见append.cc。

append.cc中已给出main()函数。

Input

输入的第一个整数n,表示有n组测试数据,每组3个整数:hh,mm,ss,分别表示时、分、秒,其值都在合法的时间范围内。

Output

每组测试数据对应一组输出“hh:mm:ss”,不足两位的输出需要前面补0,格式见sample。

Sample Input

5

0 0 1

0 59 59

1 1 1

23 0 0

23 59 59

Sample Output

00:00:01

00:59:59

01:01:01

23:00:00

23:59:59

HINT

输出格式用头文件<iomanip>中流操作算子:

setw(w)   :设置数据的输出宽度为w个字符

setfill(c):设置用字符c作为填充字符

Append Code

#include<iostream>

#include<iomanip>

using namespace std;

class Time

{

private:

    int x,y,z;

public:

    Time(int a,int b,int c){x=a,y=b,z=c;}

    void showTime(){cout<<setfill(‘0‘)<<setw(2)<<x<<":"<<setfill(‘0‘)<<setw(2)<<y<<":"<<setfill(‘0‘)<<setw(2)<<z<<endl;}

};

int main()

{

    int cases;

    cin>>cases;

    for(int i = 1; i <= cases; ++i)

    {

        int hour, minute, second;

        cin>>hour>>minute>>second;

        Time t(hour, minute, second);

        t.showTime();

    }

}

时间: 2024-12-28 00:52:12

Problem F: 时间类的构造和输出的相关文章

Problem F: 时间类的加、减法赋值运算

Description 封装一个时间类Time,在类上重载以下运算符,使得main()函数能够正确运行. 1. Time::Time()无参构造方法. 2. Time::inputTime()方法:按格式从标准输入读取数据修改Time对象的时分秒数值.该方法返回修改后的对象. 3. Time::showTime()方法:输出"hh:mm:ss",不足两位的要前面补0.如果对象不是合法的时间,则输出"Time error". 4. 运算符 加法赋值运算符"+

Problem D: 时间类的12小时制输出

Description 封装一个时间类Time,用于时间处理的相关功能,支持24小时制和12小时制,支持以下操作: 1. Time::Time()无参构造方法. 2. Time::Time(int,int,int)构造方法:传递时分秒的三个参数构造对象. 3. Time::Time(const T&)拷贝构造方法. 4. 成员读函数: Time::hour()  :返回Time的小时数: Time::minute():返回Time的分钟数: Time::second():返回Time的秒数. 5

Problem E: 时间类的静态成员计数

Description 封装一个时间类Time,用于时间处理的相关功能,支持以下操作: 1. Time::Time()无参构造方法. 2. Time::Time(int,int,int)构造方法:传递时分秒的三个参数构造对象. 3. Time::Time(const T&)拷贝构造方法. 4. 对象整体读写方法: Time::setTime(int,int,int)方法:传递时分秒三个参数修改Time对象的时分秒数.该方法返回修改后的对象. Time::setTime(const T&)方

Problem A: 时间类的拷贝和整体读写

Description 封装一个时间类Time,用于时间处理的相关功能,支持以下操作: 1. Time::Time()无参构造方法. 2. Time::Time(int,int,int)构造方法:传递时分秒的三个参数构造对象. 3. Time::Time(const T&)拷贝构造方法.拷贝构造函数调用时输出"There was a call to the copy constructor : h,m,s","h,m,s"为所构造对象的时分秒数值,无需补0.

Problem B: 时间类的错误数据处理

Description 封装一个时间类Time,用于时间处理的相关功能,支持以下操作: 1. Time::Time()无参构造方法. 2. Time::Time(int,int,int)构造方法:传递时分秒的三个参数构造对象. 3. Time::Time(const T&)拷贝构造方法. 4. 成员读函数: Time::hour()  :返回Time的小时数: Time::minute():返回Time的分钟数: Time::second():返回Time的秒数. 5. 成员写函数: Time:

Problem C: 时间类的常量

Description 封装一个时间类Time,用于时间处理的相关功能,支持以下操作: 1. Time::Time()无参构造方法. 2. Time::Time(int,int,int)构造方法:传递时分秒的三个参数构造对象. 3. Time::Time(const T&)拷贝构造方法. 4. 成员读函数: Time::hour()  :返回Time的小时数: Time::minute():返回Time的分钟数: Time::second():返回Time的秒数. 5. 成员写函数: Time:

Problem F: 分数类的类型转换

Description 封装一个分数类Fract,用来处理分数功能和运算,支持以下操作: 1. 构造:传入两个参数n和m,表示n/m:分数在构造时立即转化成最简分数. 2. show()函数:分数输出为"a/b"或"-a/b"的形式,a.b都是无符号整数.若a为0或b为1,只输出符号和分子,不输出"/"和分母. 3. double类型转换函数:用分子除以分母,得到的小数.注意:分子为0时不要输出为"-0" ----------

Problem B: 时间和日期类(III)

Problem B: 时间和日期类(III) Time Limit: 4 Sec  Memory Limit: 128 MBSubmit: 2889  Solved: 1732[Submit][Status][Web Board] Description 设计一个日期时间类,用于读取输入的数据,按格式输出日期和时间. 设计日期时间类DateTime由2个成员组成,分别是一个Date类对象和一个Time类对象: 设计DateTime类需支持以下操作: DateTime::DateTime()无参构

实验11:Problem A: 分数类的输出

注意如果是负数,要把负号放在分子上 Home Web Board ProblemSet Standing Status Statistics Problem A: 分数类的输出 Problem A: 分数类的输出 Time Limit: 3 Sec  Memory Limit: 128 MBSubmit: 1453  Solved: 574[Submit][Status][Web Board] Description 封装一个分数类Fract,用来处理分数功能和运算,支持以下操作: 1. 构造: