每日一练:计算机二级考试C++每日一练(2016-2-5)
【分析解答题】试定义一个时间类time,具体要求如下:
(1)私有数据成员。
•int h,m,s:分别表示时、分和秒。
•char *str_t:存放时间的字符串,格式为"hh:mm:ss",即"时:分:秒"。
(2)公有成员函数。
•time(int hh=0,int mm=0,int ss=0):构造函数,利用参数hh、mm和ss分别初始化成员h、m和s,并为字符串str_t分配9个字节的动态存储空间。要检查参数hh、mm和ss的合法性,即0≤hh<24,0≤mm<60,0≤ss<60,如果不合法,则采用相应的缺省参数值。
•~time():析构函数,撤销str_t所占用的动态存储空间。
•void convert():利用全局函数itoa()将成员h、m和s转换为字符串"hh:mm:ss"的形式,并存储在str_t中。
•void set_t(int hh,int mm,int ss):利用参数hh、mm和ss分别设置成员h、m和s的值,同时调用成员函数convert()设置成员str_t。注意检查参数的合法性。
•void print():输出字符串str_t,按输出示例中的格式输出时间。
(3)char *itoa(int n):全局函数,将整数n转换为字符串形式并返回。只考虑n至多为两位数的情形:当n为一位数时,如n=2,将n转换为"02"的形式;当n为两位数时,如n=59,将n转换为"59"的形式。
(4)在主函数中对该类进行测试。
输出示例:
00:00:00
12:05:30
【要求】
源程序文件名必须为myfb.cpp,并放在T盘根目录下,供阅卷用。
在下面提交答题后即可查看答案与试题解析
发布评论 查看全部评论