2-2 Time类的定义
Time Limit: 1000MS
Memory Limit: 65536KB
Problem Description
通过本题目的练习可以掌握类与对象的定义;
设计一个时间类Time,私有数据成员有hour(时)、minute(分)、second(秒);
公有成员函数有:setHour(int)设置数据成员hour的值(采用12小时制),非法的输入默认为12;setMinue(int)设置数据成员minute的值,非法输入默认为0;setSecond(int)设置数据成员second的值,非法输入默认为0;setTime(int,int,int)设置时、分、秒三个数据成员的值; showTime()显示时间对象的值。
在主函数main()中调用相应成员函数,使得时间对象的值能从键盘接收,并正确显示。
提示:时、分、秒均按2位数值形式显示 。
Input
输入
3
个整数,用一个空格间隔
Output
输出
时、分、秒的值,中间用“:”间隔
Example Input
10 11 12
Example Output
10:11:12
Author
#include <iostream>
#include <stdio.h>
using namespace std;
class Time //一个大水题,根据题目要求超级麻烦,可以简化
{
private:
int hour;
int min;
int sec;
public:
int sethour(int h)
{
if(h > 12 || h < 0)
h = 12;
return h;
}
int setmin(int m)
{
if(m > 60 || m < 0)
m = 0;
return m;
}
int setsec(int s)
{
if(s > 60 || s < 0)
s = 0;
return s;
}
void settime(int h, int m, int s)
{
hour = sethour(h);
min = setmin(m);
sec = setsec(s);
}
void showtime()
{
printf("%02d:%02d:%02d\n",hour, min, sec); //已时间格式输出,可用if else 控制 判断每个时间小于10添加0
}
};
int main()
{
int h, m, s;
Time T;
cin >> h >> m >> s;
T.settime(h, m, s);
T.showtime();
return 0;
}