首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi1.cpp,但该程序运行有问题,请改正main函数中的错误,使程序的输出结果是: nember=1 nember=10 nember=100 注意:不要改动main函数,不能增行
使用VC6打开考生文件夹下的源程序文件modi1.cpp,但该程序运行有问题,请改正main函数中的错误,使程序的输出结果是: nember=1 nember=10 nember=100 注意:不要改动main函数,不能增行
admin
2018-10-23
48
问题
使用VC6打开考生文件夹下的源程序文件modi1.cpp,但该程序运行有问题,请改正main函数中的错误,使程序的输出结果是:
nember=1
nember=10
nember=100
注意:不要改动main函数,不能增行或删行,也不能更改程序的结构,错误的语句在//******error******的下面。
1 #include<iostream.h>
2 class TestClass
3 {
4 publiC:
5 TestClasS(int i){
6 nember=i;
7 }
8 void SetNember(int m){
9 nember=m;
10 }
11 int GetNember()const{
12 return nember;
13 }
14 void Print()const{
15 cout<<’’nember=’’<<nember<<end1;
16 }
17 Drivate:
18 int nember;
19 };
20 void main(){
21 //********error********
22 TestClass obj1;
23 obj1.Print();
24 TestClass obj2(3);
25 //********error********
26 obj1.nember=10;
27 //********error********
28 TestClass.SetNember(100);
29 obj1.Print();
30 obj2.Print();
31 }
选项
答案
(1)TestClass obj1(1); (2)obj1.SetNember(10); (3)obj2.SetNember(100);
解析
程序要求输出nember的值为1,10,100。从已定源程序的main主函数开始入手,可以看出程序定义了TestClass类的对象obj1和obj2,然后通过调用类的成员函数实现了题目中的输出结果。
(1)第1个标识下,“TestClass obj1:”语句是声明TestClass类的对象obj1,根据TestClass类构造函数的定义TestClass(int i),存在整型参数,并且题目要求第一个输出结果为1,所以补全参数1,即第1个标识下的“TestClass obj1(1);”。
(2)第2个标识下的“obj1.nember=10;”应该是调用成员函数SetNember赋值。在C++中成员函数的使用形式应该是:对象名.成员函数,所以修改为“obj1.SetNember(10);”。
(3)类是对象的抽象,而对象是类的具体实例。第3个标识下“TestClass.SetNember(100);”语句中的TestClass为类,并不是对象,这里应该是使用定义的对象,即obj2,修改为“obj2.SetNember(100);”。
转载请注明原文地址:https://kaotiyun.com/show/g5Ap777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
对于以下带参数的main()函数的第二形参,voidmain(intargc,______),不可能的形式是
设有语句intn,m;chara[5],b;cin>>n>>a>>m>>b;为了分别将10和20分别赋给n和m,look赋给a,t赋给b,则正确的输入为
假定MyClass为一个类,则该类的拷贝构造函数的声明语句为
下列程序的输出结果是main(){intx=1,a=0,b=0;switch(x){case0:b++;case1:a++;case2:a++;b++;}cou
内联函数是通过______来实现的,因此内联函数是真正的函数。
以下关于友元函数的叙述不正确的是()。
有以下程序:main(){inta=5,b=4,c=3,d=2;if(a>b>C)cout<<d<<end1;elseif((c-1)=d)==1)tout<<d+1<<endl;elsecou
请将下列类定义补充完整。classBase{public:voidfun(){cout<<"Base∷fun"<<end1;}};c1assDehVed:publicBase{public:
下列程序用于将源文件中的字母进行大小写转换,请填写while的请句。#include<iostream.h>#include<fstream.h>#include<iomanip.h>voidmain(){cha
若有如下变量定义和函数调用语句:inta=5;fun(&A);则执行下面函数后正确的输出结果是()。voidfun(int*x){cout<<++*
随机试题
不发生于线粒体中的反应包括
患者女性,32岁,腹胀,查体肠鸣音消失,该患者最可能的诊断是
液体培养基的主要用途是
下列关于药物的保管原则,叙述正确的一项是
患者,男性,40岁。乏力、低热、腹泻,伴体重下降3个月。近1年有吸毒史。查体:颌下及腋下淋巴结肿大。对明确诊断,最有价值的检查是
下面说法正确的是()。
已知某地区各年份的可比价格国内生产总值和最终消费数据,如表2—2所示。根据上述资料请回答:根据国内生产总值数列,计算5年GDP总的增长速度为()。
经纪类证券公司最低注册资本限额为()。
下列关于唐朝经济立法的表述,正确的是()。
阅读下列说明和程序,回答下列问题,将解答填入答题纸的对应栏内。【说明】在开发某嵌入式系统时,设计人员根据系统要求,分别编写了相关程序,其中:【程序1】是李工编写的一个数据交换子程序。【程序2】是赵工编写的一段利用递归方法判别
最新回复
(
0
)