首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。完成以下功能: (1)完成CMyClass的构造函数,请改正注释//********1********后的错误。 (2)
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。完成以下功能: (1)完成CMyClass的构造函数,请改正注释//********1********后的错误。 (2)
admin
2021-05-06
68
问题
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。完成以下功能:
(1)完成CMyClass的构造函数,请改正注释//********1********后的错误。
(2)完成fun()函数定义,请改正注释//********2********后的错误。
(3)初始化CMyClass的成员变量Number3为4,请改正注释//********3********后的错误。
(4)完成fun()函数,请改正注释//********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<<"Numberl=
"<
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用来初始化Numberl和Number3,i初始化Number2。
(2)第2个标识下完成func()函数定义,由审题分析可知,函数func()为类的友元,故第2个标识下应为“friend void func();”。
(3)第3个标识下是静态成员的初始化,静态数据成员的初始化格式为:<数据类型><类名>::<静态数据成员>=<初始值>,因此第3个标识下应为“int CMyClass::Number3=4;”。
(4)成员函数AddNum()带有一个整型参数,因此调用此函数时必须有参数传入,可由程序运行结果分析得知传入的参数值的大小。在fun()函数内,定义CMyClass obj(1,2)后,obj.Numberl=1,obj.Number2=2,Number3=16+1=17,obj.Numberl=4,Number1为4,obj.Number2为常成员其值不会改变,调用AddNum()函数后调用显示函数显示成员变量值,可知Number3为19,因此AddNum()的参数为19.17=2,即第4个标识下应为“obj.AddNum(2);”。
转载请注明原文地址:https://kaotiyun.com/show/WXfp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
有如下程序:#inc1ude<iostream>usingnamespacestd;c1assMyClass{public:MyClass(){cout<<’*’;}M
有如下程序#include<iostream>iasingnamespacestd;classTest{public:Test(){}Test(constTest&t){cout<<1;
下列符号中可以用作C++标识符的是()。
有如下类声明:classSAMPLE{intn;public:SAMPLE(inti=0):n(i){}voidsetValue(intn0);};下列关于getVa
下面属于应用软件的是()。
下列选项中不属于结构化程序设计原则的是( )。
设有表示学生选课的三张表,学生S(学号,姓名,性别,年龄,身份证号),课程C(课号,课名),选课SC(学号,课号,成绩),则表SC的关键字(键或码)为()。
数据库系统的核心是()。
深度为7的完全二叉树中共有125个结点,则该完全二叉树中的叶子结点数为
随机试题
我国对人类危害较大的毒蛇有哪些?
一名23岁女性,因甲亢服他巴唑治疗已半年。为了解甲亢控制情况不宜做哪一项检查
患者,男,23岁。昨晚贪凉后出现泄泻,大便如水样,伴腹痛肠鸣,脘闷纳呆,鼻塞流涕,头身疼痛,舌苔薄白,脉濡缓。证属
A.红细胞管型B.白细胞管型C.上皮细胞管型D.透明管型E.蜡样管型主要见于肾盂肾炎的管型是()
女性,18岁,低热、咳嗽、咽部不适3周,胸部X线片示两肺下部网状及按小叶分布的斑片状浸润阴影,血WBC10×109/L。首选哪项检查以确定诊断()
A.呋塞米B.甲睾酮C.哌替啶D.苯丙胺E.哌唑嗪利尿脱水急速降低体重的兴奋剂是()。
下列关于施工缝处理的说法正确的是()。
某公司拟在中小板首次公开发行股票并上市,公开发行前的股本是4亿,行业市盈率是25倍,发行前控股股东持股比例为75%,准备发行后降到60%,发行前一年的净利润是2亿元。则本次发行募集资金为()亿元。
下列关于作业成本法的表述中,不正确的是()。
A、 B、 C、 D、 C题干图形均可一笔画成,选项中只有图形C可一笔画成。
最新回复
(
0
)