首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。完成以下功能: (1)完成CMyClass的构造函数,请改正注释//********1********后的错误。 (2)
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。完成以下功能: (1)完成CMyClass的构造函数,请改正注释//********1********后的错误。 (2)
admin
2017-11-27
52
问题
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。完成以下功能:
(1)完成CMyClass的构造函数,请改正注释//********1********后的错误。
(2)完成fun()函数定义,请改正注释//********2********后的错误。
(3)初始化CmyClass的成员变量Number3为4,请改正注释//********3********后的错误。
(4)完成func()函数,请改正注释//********4********后的错误。
输出的结果为:
Number1=12
Number2=18
Number3=16
Number1=4
Number2=2
Number3=19
注意:除在指定位置添加语句之外,请不要改动程序中的其他内容。
#include
class CMyClass
{
public:
//********1********
CMyClass(int i,int j)
{
Number1=i;
Number3+=i;
}
void display()
{
cout<<"Number1=
"<
cout<<"Number2=
"<
cout<<"Number3=
"<
}
void AddNum(int i)
{
Number3+=i;
}
private:
int Number1;
const int Number2;
static int Number3;
//********2********
};
//********3********
void func()
{
CMyClass obj(1,2);
obj.Number1=4;
//********4********
obj.AddNum();
obj.display();
}
void main()
{
CMyClass myObj(12,18);
myObj.display();
func();
return;
}
选项
答案
(1)将“CMyClass(int i,int j)”补充完整为:CMyClass(int i,int j):Number2(j) (2)添加语句:friend void func(); (3)添加语句:int CMyClass::Number3=4; (4)将“obj.AddNum()”补充完整为:obj.AddNum(2);
解析
(1)第1个标识下完成类的构造函数初始化类的成员变量,常成员也必须初始化,并且不能被更新,常数据成员的初始化只能通过构造函数的成员初始化类表进行,因此第1个标识下应为“CMyClass(int i,int j):Number2(j)”,i用来初始化Number1和Number3,j初始化Number2。
(2)第2个标识下完成funcO的函数定义,由审题分析可知,函数func()为类的友元,故第2个标识下应为“friend void func();”。
(3)第3个标识下是静态成员的初始化,静态数据成员的初始化格式为:<数据类型><类名>::<静态数据成员>=<初始值>,因此第3个标识下应为“int CMyClass::Number3=4;”。
(4)成员函数AddNum()带有一个整型参数,因此调用此函数时必须有参数传入,可由程序运行结果分析得知传入的参数值的大小。在fun()函数内,定义CMyClass obj(1,2)后,obj.Number1=1,obj.Number2=2,Number3=16+1=17,obj.Number1=4,Number1为4,obj.Number2为常成员其值不会改变,调用AddNum()函数后调用显示函数显示成员变量值,可知Number3为19,因此AddNum()的参数为19-17=2,即第4个标识下应为“obj.AddNum(2);”。
转载请注明原文地址:https://kaotiyun.com/show/WDAp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
C++中把数据之间的传输操作称为()
以下程序的执行结果是()。#include<iostream.h>template<classT>classSample{Tn;Public:Sample(Ti){n=i
已知类Sample中的一个成员函数说明如下:voidSet(Sample&a);其中,Sample&a的含意是()。
有以下程序main(){ int p[7]= {11,13,14,15,16,17,18},i=0,k=0; while(i<7 & & p[i] %2) { k= k+ p[i];i+ +;} cout<<k<<end1;}执行后输
有以下程序段int k=0;while(k=1)k++;while 如循环执行的次数是
设有定义 class C { public: int value; … }; int x, * p; 则以下引用形式中,正确的是
若有以下定义和语句 int a=4.b=3.* p, * q, * w; p=&a;q=& b; w=q;q=NULL; 则以下选项中错误的语句是
数据模型分为格式化模型和非格式化模型,则关系模型属于【 】模型。
程序设计分为面向过程程序设计和面向对象程序设计,具有继承性特点的程序设计称为【 】程序设计。
在长度为n的有序线性表中进行二分查找,需要的比较次数为
随机试题
水蛭最主要的性状特征是()。
微量营养素包括_______。
咯血患者的关键护理措施是
下列选项属于实际征地费用中转移支付费用的有()。
甲股份有限公司(以下简称甲公司)系一家上市公司,2012年至2014年对乙股份有限公司(以下简称乙公司)股权投资业务的有关资料如下:(1)2012年5月16日,甲公司与乙公司的股东丙公司签订股权转让协议。该股权转让协议规定:甲公司以5400万元收
公文中的数字,除成文日期、部分结构层次序数和在词、词组、惯用语、缩略语、具有修辞色彩语句中作为词素的数字必须使用汉字外,应当使用阿拉伯数字。()
以下是在农村住房安全检查工作中乡镇干部和检查人员的一段对话。检查人员:“住房安全工作推进得怎么样了?”乡镇干部:“每个人我都检查过,都有安全住房。”检查人员:“都检查过了吗?”乡镇干部:“还有老张一户没有解决。目前他
供给侧改革的意义在于,通过制度变革、结构优化和要素升级,在供给侧放松管制,激发活力,释放创造力,充分发挥市场在资源配置中的决定性作用,进而为中国经济培育新主体,开发新产业,打造新动力。以下措施不是供给侧改革所提倡的工作重点的是()。
设f(x)在(-∞,+∞)上可导,[f(x)-f(x-1)],则a=_______.
PeopleintheUnitedStateslovetheirdogsandtreatthemwell.Theyusemanyexpressionswiththeword"dog".Herearesomeex
最新回复
(
0
)