首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
用VC6打开考生文件夹下的源程序文件modi3.cpp,这个程序完成输出到屏幕一些特定的信息,但工程有错误或者不完整,请完成以下功能: (1)初始化m Num2的值为i,请在注释//********1********后添加适当的语句。 (2)补充全局函
用VC6打开考生文件夹下的源程序文件modi3.cpp,这个程序完成输出到屏幕一些特定的信息,但工程有错误或者不完整,请完成以下功能: (1)初始化m Num2的值为i,请在注释//********1********后添加适当的语句。 (2)补充全局函
admin
2013-09-11
43
问题
用VC6打开考生文件夹下的源程序文件modi3.cpp,这个程序完成输出到屏幕一些特定的信息,但工程有错误或者不完整,请完成以下功能:
(1)初始化m Num2的值为i,请在注释//********1********后添加适当的语句。
(2)补充全局函数fun()使之能够调用类TestClass的成员变量,请在注释//********2********后添加适当的语句。
(3)初始化静态变量,请在注释//********3********后添加适当的语句。
(4)修改注释//********4*******后的语句。使得程序输出以下内容:
m Num1=1
m Num2=2
m Num3=1
m Num1=4
m Num2=2
m Num3=7
注意:仅在函数指定位置添加语句,请勿改动主函数main与其他函数中的任何内容。
#include
class TestClass
{
public:
//********1********
TestClass(int i,int j)
{
m Numl=i:
m—Num3+:i;
}
void Print()
{
cout<<“m Num1=“<
cout<<“m Num2=”<
cout<<“m Num3=”<
}
void Add(int i)
{
m—Num3+=i;
}
private:
int m—Num1;
const int m Num2;
static intm_Num3;
//********2********
};
//********3********
void fun()
{
TestClass Num(1,2);
Num.m Num1=4:
//********4********
Num.Add();
Num.Print();
}
void main()
{
TestClass Nurn(1,2);
Num.Print();
fun();
return;
}
选项
答案
(1)添加语句:TestClass(int i,int j).m—Num2(j) (2)添加语句:friendvoidfun(): (3)添加语句:iIlt TestClass::m Num3=0; (4)将“Num.Add();”补充完整为:Nurn.Addq(5);
解析
在VC环境下打开程序,根据题干给出的几条功能要求,对程序中给出注释下的内容逐个补全或修改。从己给定源程序的main主函数开始入手,可以看出程序通过调用类TestClass和函数fun实现各种输出操作。
[解题思路]
(1)根据“constntm Num2;”语句知道m Num2为类TestClass中的私有数据,另外,C抖定义构造函数的初始化数据成员的方法中可以在原有函数末尾加一个冒号,然后列出参数的初始化表实现,即“TestClass(iIlt i,int j):m_Nurrd(j)”。
(2)在C++中,如果在本类以外的其他地方定义了一个函数,在类体中是用friend对该函数进行声明的,此函数称为本类的友元函数,并且能够调用本类中的成员变量。程序中fun()在类TestClass以外的地方定义的,为了实现其对类TestClass中成员变量的调用,在类TestClass中补全“friend void fun();”,即声明。fun()为类TestClass的友元函数。
(3)在C++中,初始化类中数据成员的格式可以是“<类型>类名class::参数=”,其中<类型>为要初始化参数的类型,“::”为作用域符号,说明参数是class中的参数,所以这里补全“intTestClass::m Num3=0;”。
(4)函数。fun()中“Num.Add();”语句应该是调用类“TestClass”中的成员函数“voidAdd(int i)”。其定义中存在参数inti,所以注释下修改的语句缺少参数。主函数首先调用“Num.Print();”,即实现题目中输出的前三条语句,而“fun():”语句实现后面三条语句的输出,即“m Num3=7”才是调用Num.Add的输出结果,即“m。Num3+=i:”的计算结果。“TestClaLss Num(1,2);”中将i的值初始化为1,“m Num3”的值在上一次“Num.Print();”调用中为l,如果计算结果为7,那么Add(inti)中i的初始化值为5,即“Num.Add(5);”。
转载请注明原文地址:https://www.kaotiyun.com/show/fzBD777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
简述北宋积贫积弱的表现与成因。(中国社会科学院研究生院2018年中国古代史真题)
学习程度对于遗忘有很大的影响,为了达到最好的学习结果,学习程度应达到多少
简述统计假设检验中两类错误的定义及其关系。
事后检验常用的方法有()
夸美纽斯主张国家既对教育具有不可推卸的责任,也有管理教育的最高权力。下列对夸美纽斯此方面的主张表述错误的是
2011年11月11日,中国人民银行公布了10月份的金融统计数据,对M2的统计口径进行了调整,将住房公积金中心存款和非存款类金融机构在存款类金融机构的存款计入了M2。试回答下列问题:我国现行的货币供应量层次是如何划分的?
对股票A和股票B的两个(超额收益率)指数模型回归结果如下表。在这段时间内的无风险利率为6%,市场平均收益率为14%,对项目的超额收益以指数回归模型来测度。(1)计算每只股票的α,信息比率,夏普测度,特雷诺测度;(2)下列各个情况下投资者选择哪只股票最
法由国家制定或认可这一基本特征,表明法具有()。
关于法治问题有如下观点:①法治与法制没有区别;②法治强调法律在社会生活中的至高权威;③中国建立法治国家,要将依法治国和以德治国结合起来;④法治意味着法律调整的正当性。下列选项中,表述不正确的观点是
我国实体法和程序法开始逐步分离始于()
随机试题
治疗感染中毒性休克应用糖皮质激素应注意:
患者,男性,45岁。因大便带血2个月就诊,为排除直肠癌,询问病史时,你认为下列最重要的一项是
《中华人民共和国行政处罚法》规定的行政处罚程序中,()适用于违法事实确凿并有法定依据,当场做出的对公民处以警告或较少罚款的行政处罚。
企业在()应集中力量提高中层管理人员的管理能力,如培养并影响他们的管理风格和思维习惯,使之适应企业的要求等。
庐陵孝献王义真,美仪貌,神情秀彻。初封桂阳县公,食邑千户。年十二,从北征大军进长安,留守柏谷坞,除员外散骑常侍,不拜。及关中平定,高祖议欲东还,而诸将行役既久,成有归愿,止留偏将,不足镇固人心,乃以义真行都督雍、凉、秦三州司州之河东、平阳、河北三郡诸军事、
Methodsofstudyingvary;whatwork【C1】___________forsomestudentsdoesn’tworkatallforothers.Theonlythingyoucandois
教育学发展的科学化阶段的重要特点有_______、_______和教育学研究的细化。
晓雨任职人力资源部门,她需要对企业员工Office应用能力考核报告进行完善和分析。按照如下要求帮助晓雨完成数据处理工作。将“成绩单”工作表中的数据区域设置为打印区域,并设置标题行在打印时可以重复出现在每页顶端。
Scientistshaveaskedimportantquestionsaboutthisexplosionformorethanacentury.Whydiditoccursolateinthehistory
PassageThreeWhatdoesthesecond"that"inHisashiKatayama’swordsreferto?
最新回复
(
0
)