首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用Vc++6.0打开考生文件夹下的源程序文件3.cpp。其中定义的类不完整,按要求完成下列操作,将类的定义补充完整。 (1)完成TC的构造函数,请改正注释1后的错误。 (2)完成func函数定义,请改正注释2后的错误。 (3)初始
使用Vc++6.0打开考生文件夹下的源程序文件3.cpp。其中定义的类不完整,按要求完成下列操作,将类的定义补充完整。 (1)完成TC的构造函数,请改正注释1后的错误。 (2)完成func函数定义,请改正注释2后的错误。 (3)初始
admin
2020-07-23
36
问题
使用Vc++6.0打开考生文件夹下的源程序文件3.cpp。其中定义的类不完整,按要求完成下列操作,将类的定义补充完整。
(1)完成TC的构造函数,请改正注释1后的错误。
(2)完成func函数定义,请改正注释2后的错误。
(3)初始化CmyClass的成员变量Num3为4,请改正注释3后的错误。
(4)完成func函数,请改正注释4后的错误。
输出的结果为
Num1=12
Num2=18
Num3=16
Num1=4
Num2=2
Num3=19
注意:除在指定位置添加语句之外,不要改动程序中的其他内容。
试题程序:
#include
class TC
{
public:
//********1********
TC(int i,int j)
{
Num1=i:
Num3+=i:
}
void display()
{
cout<<"Num1="<
cout<<"Num2="<
cout<<"Num3="<
}
void AddNum(int i)
{
Num3+=i:
}
private:
int Num1:
const int Num2;
static int Num3;
//********2********
};
//********3********
void func()
{
TC obi(1,2);
obj.Num1=4:
//********4********
obj.AddNum();
obj.display();
}
void main()
{
TC myObj(12,18);
myObj.display();
rune();
return;
}
选项
答案
(1)将“TC(int i.int j)”补充完整为“TC(int i,int j):Num2(j)”。 (2)应添加“friend void func();”。 (3)应添加“int TC::Num3=4;”。 (4)将“obj.AddNum()”补充完整为“obj.AddNum(2);”。
解析
本题在第1处完成类的构造函数初始化类的成员变量,常数据成员也必须初始化,并且不能被更新,常数据成员的初始化只能通过构造函数的成员初始化类表进行,因此第1处的语句应为“TC(int i,int j):Num2(j)”,i用来初始化Num1和Num3,j初始化Num2。
第2处完成func的函数定义,由审题分析可知,函数fune为类的友元,故第2处的语句应为“friend void func();”。
第3处的语句是静态成员的初始化,静态数据成员的初始化格式为“(数据类型)(类名)::(静态数据成员)一(初始值)”,因此第3处的语句应为“int TC::Num3=4;”。成员函数AddNum带有一个整型参数,因此调用此函数时必须有参数传入,可由程序运行结果分析得知传入的参数值的大小。在fun函数内,定义TC obj(1,2)后,ohj.Num1=1,obj.Num2=2,Num3=16+1=17,obj.Num1=4,Num1为4,obj.Num2为常数据成员,其值不会改变,N用AddNum函数后调用显示函数显示成员变量值,可知Num3为19,因此AddNum()的参数为19-17=2,即第4.处的语句应为“ohj.AddNum(2):”。
转载请注明原文地址:https://jikaoti.com/ti/rml0FFFM
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
下列情况中,不会调用拷贝构造函数的是()。
下列叙述中正确的是( )。
有如下类定义:classPoint{public:voidSetX(intxx){x=xx;}voidSetY(intyy){y=yy;}
计算数列第n项的函数定义如下:inta(intn){if(n==0)return0;elseif(n==1)return1;elseif
下列有关模板的叙述中,正确的是()。
下列关于运算符函数的描述中,错误的是()。
软件按功能可以分为应用软件、系统软件和支撑软件(或工具软件)。下面属于应用软件的是( )。
数据库系统的核心是()。
规定输入的字符串中只包含字母和*号。编写函数fun,其功能是:除了字符串前导和尾部的*号外,将串中其他的*号全部删除。形参h已指向字符串中第一个字母,形参p指向字符串中最后一个字母。在编写函数时,不得使用C语言提供的字符串函数。例如,若字符串中的
数据库设计中反映用户对数据要求的模式是()。
随机试题
胆为六腑之一,又称奇恒之腑,是由于
进行生物碱沉淀反应的介质是
甲公司对一行政机关发给乙公司的许可证不服,向法院提起行政诉讼,法院受理后发现行政机关发给乙公司的许可证虽违反决定时的法律,但符合新的法律。下列说法正确的有:()
某公路工程施工项目,建设单位通过施工监理招标和施工招标,分别于2010年4月10日及2010年4月25日与某监理单位和某施工单位签订了施工监理合同和施工合同。在施工过程中发生了以下事件:事件1:路基工程施工时,施工单位无法在工程现场附近找到满足技术
企业职工伤亡事故统计实行以()为主的制度。
证券投资基金能够通过有效的资产组合最大限度地()。
留存收益包括盈余公积和资本公积。()
游泳池有甲、乙、丙三个注水管,如果单开甲管需要20小时注满水池;甲、乙两管合开需要8小时注满水池;乙、丙两管合开需要6小时注满水池、那么,单开丙管需要多少小时注满水池?()
高山上敲鼓:四面闻名
教唆犯可以是()。
最新回复
(
0
)