首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请使用VC6或使用【答题】菜单打开考生文件夹pmjl下的工程pmjl。此工程定义了StopWatch(秒表)类,用于表示时、分、秒信息,有构造函数StopWatch()、设置时间函数reset(),并且重载了前置和后置++运算符,实现增加1秒的功能。 程序
请使用VC6或使用【答题】菜单打开考生文件夹pmjl下的工程pmjl。此工程定义了StopWatch(秒表)类,用于表示时、分、秒信息,有构造函数StopWatch()、设置时间函数reset(),并且重载了前置和后置++运算符,实现增加1秒的功能。 程序
admin
2015-06-27
48
问题
请使用VC6或使用【答题】菜单打开考生文件夹pmjl下的工程pmjl。此工程定义了StopWatch(秒表)类,用于表示时、分、秒信息,有构造函数StopWatch()、设置时间函数reset(),并且重载了前置和后置++运算符,实现增加1秒的功能。
程序中位于每个“//ERROR****found****”之后的一行语句有错误,请加以改正。改正后程序的输出结果应该是:
00:00:00
00:01:00
注意:只修改每个“//ERROR****found****”下的那一行,不要改动程序中的其他内容。
#include
#include
usingnamespacestd;
classStopWatch//"秒表"类
{
inthours;//小时
intminutes;//分钟
intseconds;//秒
public:
StopWatch():hours(0),minutes(0),
seconds(0){}
voidreset()fhours=minutes=seconds=0;}
StopWatchoperator++(int)//后置++
{
StopWatchold=*this;
++(*this);
returnold;
}
//前进一秒
StopWatch&operator++()//前置++
{
//ERROR*********found*********
if(seconds++=60)
{
seconds=0;minutes++;
if(minutes=60)
{
minutes=0;
hours++;
}
}
//ERROR*********found*********
returnthis;
}
friendvoidshow(StopWatch);
};
voidshow(StopWatchwatch)
{
cout<
cout<
<
<
end1;
}
intmain()
{
StopWatchsw;
show(SW),
for(inti=0;i<59;i++)SW++;
//ERROR*********found*********
show(sw++);
return0;
}
选项
答案
(1)if ((++seconds) == 60) (2)return *this; (3)show(++sw);
解析
(1)主要考查考生对’++’运算符的掌握,结合程序可知,应先使seconds加1,再判断是否需要进位,因此为++second。
(2)主要考查考生对this指针的掌握,应返回this指针指向的类。
(3)主要考查考生对’++’运算符的掌握,判断sw是要先取值再自加1还是先自加1再取值。
转载请注明原文地址:https://kaotiyun.com/show/RxNp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
在下面的类定义中,横线处应填入的内容是______。classFred{public:voidprint(){cout<<data<<end1;}voidsetData(do
要定义数组A,使得其中每个元素的数据依次为:3、9、4、8、0、0、0,错误的定义语句是______。
若已定义,以下fun函数的功能是:在第一个循环中给前10个数组元素依次赋1、2、3、4、5、6、7、8、9、10;在第二个循环中使a数组前10个元素中的值对称折叠,变成1、2、3、4、5、5、4、3、2、1。请填空。fun(inta[])
函数调用时,若形象,实参均为数组,则其传递方式是【】。
排序是计算机程序设计中的一种重要操作,常见的排序方法有插入排序、【】和选择排序等。
在结构化方法中,用数据流程图(DFD)作为描述工具的软件开发阶段是()。
以下程序段的输出结果是______。#include<iostream.h>voidmain(){intx[]二{9,7,5,3,1),y=0,j,*p=&x[2];for(j=0;i<3;j+
两次运行下面的程序,如果从键盘上分别输入10和8,则输出结果为______。#include<iostream.h>viodmain(){ intx:cin>>x:if(x++>9)cout<<x;
类模板的使用实际上是将类模板实例化为一个具体的______。
已知类X的定义如下,为了实现将对象成员k的值修改为678,下面的哪条语句是正确的______。classX{private:intk;public:K(intn){k=n;}s
随机试题
5个月小儿一直以牛乳喂养,体检时发现血清铁蛋白下降,有贫血的倾向。另一名同龄小儿一直母乳喂养则无此改变,原因是
将混合生物碱溶于氯仿中,用pH由高到低的酸性缓冲溶液顺次萃取,生物碱则可按下列顺序依次萃取出来
一患者Ⅲ°深覆牙合,上颌左126右56缺失,义齿密合,但左上12腭侧塑料基托反复折断。处理方法是
决定肿瘤性质的主要理论依据是
按低于票面金额的价格发行,到期时按票面金额兑付,而不另付利息的国债是()。
某联合铁矿山单位外出到甲地收购铁矿石,铁矿石适用()。
用SQL语言描述"在学生表中查找男学生的全部信息",以下描述正确的是()。
Thespeakerthinksthat
Inafewmonths’timeyouaregoingtograduatefromuniversityandmostwillhavetofindjobs.Youcaneitherchoosetoworka
Forwhatoccasionhasthecakebeenmade?
最新回复
(
0
)