首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。完成以下功能: (1)完成CMyClass的构造函数,请改正注释//********1********后的错误。 (2)完成func(1
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。完成以下功能: (1)完成CMyClass的构造函数,请改正注释//********1********后的错误。 (2)完成func(1
admin
2016-10-28
33
问题
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。完成以下功能:
(1)完成CMyClass的构造函数,请改正注释//********1********后的错误。
(2)完成func(1函数定义,请改正注释//********2********后的错误。
(3)初始化CmyClass的成员变量Number3为4,请改正注释//********3********后的错误。
(4)完成func()函数,请改正注释//********4********后的错误。
输出的结果为:
Number1=12
Number2=18
Number3=16
Number1=4
Number2=2
Number3=19
注意:除在指定位置添加语句之外,请不要改动程序中的其他内容。
#include<iostream.h>
class CMyClass
{
public:
//********1********
CMyClass(int i,int j)
{
Number1=i;
Number3+=i;
}
void display()
{
cout<<"Number1="<<Number1<<endl;
cout<<"Number2="<<Number2<<endl;
cout<<"Number3="<<Number3<<endl;
}
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个标识下完成func0的函数定义,由审题分析可知,函数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/4ONp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
以下能对二维数组a进行正确初始化的语句是
若已定义的函数有返回值,则以下关于该函数调用的叙述中错误的是
在32位的计算机中,一个char型数据所占的内存长度的字节是
有如下类的定义,下划线处的语句是()。classMyClass{_______intx,y;public;MyClass(inta=0,intb=0){X=a;y=b;}staticvoidch
C++程序是从【】函数开始执行的。
软件设计模块化的目的是【】。
以下类定义中可能会引起错误的语句是classA{public:~A(){}//1inti;//2private:
已知fl(int)是类A的公有成员函数,p是指向成员函数fl()的指针,采用赋值,()是正确的。
模块独立性是软件模块化所提出的要求,衡量模块独立性的度量标准则是模块的
假定int类型变量占用两个字节,其有定义intx[10]={0,2,4};,则数组x在内存中所占字节数是
随机试题
A.7.6~9.5mB.3.6~7.6mC.1.2~3.6mD.0.5~1.2mE.0~0.5m亲人、夫妻之间的距离,双方可感到对方的气味、呼吸等私密性感觉刺激
患者,女,33岁。左乳发现一4cm×3cm大小肿块,与周围组织粘连,边界不清,同侧腋窝淋巴结肿大。该患者欲行手术治疗,备皮范围为
女性,46岁。神经衰弱2年,精神抑郁,情绪不宁,心烦失眠,疲乏,胸胁胀闷,脘腹痞满,不思饮食,苔薄白,脉弦男性,58岁。神经衰弱6个月余,出现心绪不宁,烦躁不安,失眠多梦,容易激动,神疲,健忘,头晕头痛,口苦口干,胸闷,恶心,痰多,舌质红苔黄腻,脉滑数
患者,男,71岁。2年来无诱因逐渐出现行动缓慢,行走时上肢无摆动,前倾屈曲体态。双手有震颤,双侧肢体肌张力增高。无智能和感觉障碍,无锥体束损害征。下列最适当的治疗药物是
A.心与肾B.肝与脾C.肺与肾D.脾与肾E.肝与肾
胶凝材料按硬化条件不同,可分为气硬性胶凝材料和水硬性胶凝材料,下列材料不属于气硬性胶凝材料的是()。
根据《中华人民共和国建筑法》,建筑工程监理代表建设单位对承包单位的施工质量、建设工期和建设资金使用等方面实施监督,其监督依据有()。
从所给的四个选项中,选择最合适的一个填入问号处,使之呈现一定的规律性。
Childrenmodelthemselveslargelyontheirparents.Theydosomainlythroughidentification.Childrenidentify【C1】______apar
中秋节将至,给客户张经理发一封邮件,送上自己的祝福。新建一封邮件,收件人为:zhangqiang@sina.com,主题为:中秋节快乐!内容为;张总,祝您节日快乐,身体健康,工作顺利!
最新回复
(
0
)