2022年福建省漳州市全国计算机等级考试C++语言程序设计预测试题(含答案).docx
2022年福建省漳州市全国计算机等级考试C+语言程序设计预测试题(含答案)学校:班级:姓名:考号:一、1.选择题(10题)1 .下列程序中画线处应填入的语句是class Base public :void fun() cout < < "Base of fun” < < endl ; ) ; class Derived : public Base void fun() 显示基类的成员函数 fun cout < < "Derived of fun" < <endl ; ;A.fun() ; B.Base . fun() ; C.Base: :fun() ; D.Base 一 > fun();2 .下列定义中P指向的地址可更改,但*P不能够更改的是( )oA.constintP ; B.int*constP ; C.constint*constP ; D.int*P ;3 .如果用数组名作为实参,则传递给形参的是()。A.数组的首地址B.第一个元素的值C.数组元素的个数D.数组中全部 元素的值4 .对于下列语句,正确的判断是for=(x=0;y=0;(y!=123)&&(x < 4);x+);A.是无限循环B.循环次数不定C.最多执行4次D.最多执行3次5 .已知fl(int)是类A的公有成员函数,p是指向成员函数fl()的指针, 采用赋值,()是正确的。试题程序:#include(iostream . h>classTCq、-J> 、q、q,*1*L*enrol不不不不不不个不TC(inti)(m_i=i ; voidprint(cout«m_i«,;public :intm i ;intmainerrorinti ;TC04(10);while(i>5) ! * *enr* * * / i+ + :04 . print ;)cout«endl ;returnO ;37 .使用VC+6. 0打开考生文件夹下的源程序文件1.cpp。本程序要求输入一个字符串,然后将其中的小写字母改成大写字母,字符可 能输入多行,当输入字符“?”时,默认字符输入结束,最后把结果输出 到屏幕中。注意:不要改动main函数,不能增加或删除行,也不能更改程序的结 构,错误的语句在/ / *errc)r*的下面。试题程序:#include<iostream. h> voidmain inti=O;charstr120;cout«nEnterastringendwith?. n«endl ;cin. getline(str, 120);个个个个个个个个个个个个个个个个while(str)vl*J> *1> vi*个个个个个个个个个个个个 *个个*if(stri)=a)stri=stri-a+A;i+ + ;cout«str«endl ;return ; )38 .使用VC+ + 6 .0打开考生文件夹下的源程序文件1 .cppo本程序要 求输入一个字符串,然后将其中的小写字母改成大写字母,字符可能输 入多行,当输入字符“?”时,默认字符输入结束,最后把结果输出到屏幕 中。注意:不要改动main函数,不能增加或删除行,也不能更改程序的结 构,错误的语句在/ / *error*的下面。试题程序:#include<iostream . h>voidmain(inti=O ;charstr120;cout«nEnterastringendwith? . n«endl ;*1vl* 1*个个个个不不小个个不不不不个个cin . getline(str, 120);个个个个小个个个nor个个小个个个个个whilc(str) stri=stri-a + A ;i+ + ;cout«str«endl ;return ;)39 .使用VC+ +6 .0打开考生文件夹下的源程序文件1 .cpp,该程序运行有问题,请改正main函数中的错误,使程序的输出结果为:number= 1number=10number= 100注意:不要改动main函数,不能增加或删除行。也不能更改程序的结构,错误的语句在/ / *error*的下面。试题程序:#include<iostream . h>classTC (public :TC(inti) (number=i ;voidSetNumber(intm)(number=m ;intGetNumberconst(returnnumber ;voidPrintconst cout«nnumber=H«number«endl ; )private :intnumber ;voidmaink£>*1* vl*vl* vl* *J> 1* kL* kL* kJ>不不不不不不不不noi*个个个不不不个个TCobjl ;objl . Print ;TCobj2(3);kT* 1*个个个不不不个不nor个个个个个个个小objl . number= 10 ;! 1 * error* oo *TC . SetNumber(lOO);objl . Print ;obj2 . Print ;40 .使用VC + + 6 . 0打开考生文件夹下的源程序文件1 . cpp,该程序运行时有错误,请改正程序中的错误。本程序要求实现 的功能为从键盘输入一个字符串,并将结果保存到文件1 . txt中。注意:不要改动main函数,不能增加或删除行,也不能更改程序的结构,错误的语句在errorvl> *1k£«T* *T* *T> T> *T T>的下面。试题程序:#include<iostream>#include<fstream>v|> rr>vw <t*error*1> kJ> 1* kL* k1* k!> k!> r|> r|>usingstd ;voidWriteFile(char*s) ofstreamoutl ;L* kJ* k!> kJ> k!> vl> kI# k!>个个小个个个个个3r个个个个个个个个outl . open(nl . txt", binary|app);for(inti=0 ; si!=0 ; i + +)k1> k1> k1>vl>k!>k|> k>个个个个个不不不error不不不不不不不不outl . puts(si);outl . close ;)voidClearFile (ofstreamout 1 ;outl . open(ul . txt");outl . close ;)intmain chars 1024;ClearFile ;cout«npleaseinputastrin9 :n«endl ;cin . getline(s, 1024);WriteFile(s);returnO ; )41 .使用VC+6. 0打开考生文件夹下的源程序文件1. cpp,该程序运行时有错误,请改正程序中的错误。本程序要求实 现的功能为从键盘输入一个字符串,并将结果保存到文件1. txt中。 注意:不要改动main函数,不能增加或删除行,也不能更改程序的结 构,错误的语句在I I* error* * _。试题程序:#include<iostream>#include<fstream>/不不不不不不不不error不不不不,不不不usingstd;voidWriteFile(char*s) (ofstreamoutl ;/不不不小个不不不error小不小不不不不不outl. open(nl. txt", binary|app);for(inti=0; si!=0; i + + )/7,7,/不不不不不不不不error不不小不不不不不outl. puts(si); )outl. close; )voidClearFile (ofstreamoutl ;outl. open(nl. txt'');outl. close; )intmain (chars 1024;ClearFile;cout«npleaseinputastrin9 :n«endl;cin. getline(s, 1024);WriteFile(s);returnO ; )42 .使用VC + +6 .0打开考生文件夹下的源程序文件1 .cpp,该程序运 行时有错,请改正其中的错误,使程序正常运行,并使程序输出的结果 为:sizeof(Sl)=5sizeof(s2)=10sizeof(s3)=l注意:不要改动main函数,不能增加或删除行,也不能更改程序的结 构,错误的语句在/ / *error*的下面。不能删除assert ()语句。只能修改后面的数字。提示:assert函数如果为假,则会产生一个中断异常。试题程序:#include<iostream . h> #include<assert . h> voidmain ()(char*sl="abc":vt*vt*个不不不不不不个不不不不不不不不assert(sizeof(sl )=3): cout«nsizeof(sl)=5n«endl ;chars210=nabn:7, 7,7,7" 7,7"assert(sizeof(s2)=2);cout«Msizeof(s2)=10n«endl ;chars3=23 :k1*个个个个个个个个个个个个个*T* *T* *T*assert(sizeof(s3)=4);cout«nsizeof(s3)=r,«endl ;return ; )43 .使用VC+6. 0打开考生文件夹下的源程序文件1. cpp,该程序运行有问题,请改正main函数中的错误,使程序的输出结果为:number= 1 number= 10 number=100注意:不要改动main函数,不能增加或删除行。也不能更改程序的结构,错误的语句在/ / *enor*的下面。试题程序:#include<iostream. h>classTC (public:TC(inti) ( number=i;) voidSetNumber(intm) (number=m ;) intGetNumberconst (returnnumber;) voidPrintconst cout«nnumber=n«number«endl;A.p=fl B.P=A : fl C.P=A : fl() D.P=fl()6 .如果友元函数重载一个运算符时,其参数表中没有任何参数则说明该运算符是A.一元运算符B.二元运算符C.选项A)和选项B)都可能D.重载错、口 庆7 .下列叙述中正确的是A.软件测试的主要目的是确定程序中错误的位置8 .软件调试的主要目的是发现程序中错误的类型C.程序经调试后还应进行测试D.软件的测试与调试工,作最好都由程序编制者来完成8 .树是结点的集合,它的根结点的数目是()。A.有且只有1个B.1或多于1 C.0或1 D.至少有2个9 .在C+程序中,使用基本输入输出流需要包含的头文件是()。10 .下列表示引用的方法中,()是正确的。已知:int m=10 :A.int &x=m ;B.int &y=10 ;C.int &ZD.float &t=&m ;private:intnumber;voidmain个个个个个个个个nor个个个个个个个个TCobjl;objl. Print;TCobj2(3);7,7,K.t>7< 7,个个个个个个个个个个个个个个个个objl. number=10;! I * error* *TC. SetNumber(lOO);objl. Print;obj2. Print;44 .使用VC+6. 0打开考生文件夹下的源程序文件1.cpp,该程序运行时有错误,请改正错误,使程序正常运行,并且要求最后一个catch必须抛出执行的任何异常。程序异常,输出信息为error0ERROR注意:不要改动main函数,不能增加或删除行,也不能更改程序的结 构,错误的语句在/ / *errc)r*的下面。试题程序:#include<iostream. h) intmain try throw(nerrorn);7,7,7,7,7,k1>7, 7,个个个个个个不个rror个个个个个个个个catch(chars) cout«s«endl ;) try throw(int)0);kL* kL*kL* kL*个小个个个不不小nor个个不不不小个个catch cout«i«endl;) try throw(O);throw,'error");K.f>个个个个个个个个nor个个个个"个个个catch cout«nERRORn«endl;returnO;45 .使用VC+6. O打开考生文件夹下的源程序文件1.cpp,该程序运行时有错。请改正程序中的错误,使程序输出的结果为1003732注意:错误的语句在/ / *error*的下面,修改该语句即可。试题程序:#include<iostream. h> voidmain intm=0142:intn=0X27:intq=32;cout< <m< <endl;cout< <n< <endl;cout <<q<< endl ;return ; )五、综合应用题(2题)46 .使用VC+6. 0打开考生文件夹下的源程序文件3. cpp。其中定 义的类不完整,按要求完成下列操作,将类的定义补充完整。每卖出 一个水果,则计算水果的重量,还要计算所有卖出水果的总重量以及 总个数,同时允许退货,请按照以下的操作,把类补充完整。(1)定义类TCFruit的私有静态数据成员float型变量AllWeight和int型 变量AHN0,请在注释1后添加适当的语句。(2)完成类TCFruit的带一个float型变量w的构造函数,并把这个w加 到AllWeight中,并且AllNo自加。请在注释2后添加适当的语句。(3)在析构函数中,在AllWeight中减去weight,然后AHN。自减,请 在注释3后添加适当的语句。(4)完成静态成员变量的初始化为0,请在注释4后添加适当的语句。 注意:增加或者修改代码的位置已经用符号表示出来,请不要修改其 他的程序代码。试题程序:#include(iostream. h>classTCFruit private:floatWeight;1 k!>sl> k!> kJ> k(>rj* rr *T* I rj* rT* *T* ri* r7*staticintAHNo;public:TCFruit(floatw)/vl* *1*1* 1* kL* kL* vL*/J*7AllWeight+=w:A11N0+ + :TCFruit/ >1 /卜rj> 一卜卜AllWeight-=Weight:voiddisplay cout«nSellaFruitwithn«Weight«nk9H<< endl;cout«Allsellnumber:n«AllNo«endl;cout«nAllsellweight:!«AllWeight«nk9n« endl«endl;I 1 *4* floatTCFruit: AllWeight=O. 0;intmainTCFruitFruitl(l. 2);Fruitl. display;TCFruitFruit2(2. 3);Fruit2. display;returnO ; )47.使用VC+6. 0打开考生文件夹下的源程序文件3. cpp,其中定 义了类BA、PA1和PA2,其中PA1类由BA类公有派生,PA2类由 PA1类公有派生。上述3个类的定义并不完整,请按要求完成下列操 作,将程序补充完整。程序输出结果如下:7 00511 5 11定义类BA的构造函数,该构造函数有一个整型的参数m,在构造 函数中将m赋值给数据成员ao请在注释1之后添加适当的语句。(2)定义类PA1的构造函数,该构造函数有两个整型的参数m和n,在 构造函数中将m赋值给数据成员b,将n作为基类BA构造函数的参 数值传人。请在注释2之后添加适当的语句。(3)定义类PA2的构造函数,该构造函数有3个整型的参数m、n和 k,在构造函数中请将m赋值给数据成员c,将n和k分别赋值给基类 PA1构造函数的参数m和no请在注释3之后添加适当的语句。(4)完成类PA2的成员函数show的定义,该函数调用基类成员函数, 输出基类私有成员a、b及类PA2自身的数据成员c的值,上述3个 值在输出时用空格隔开。请在注释4之后添加适当的语句。注意:除在指定位置添加语句之外,请不要改动程序中的其他内容。 试题程序:#include(iostream. h>classBA(inta;public:/ / *intgetareturna; ;classPAl: publicBA(intb;public:/ / *2*intgetbreturnb; ;classPA2: publicPAl(intC;/vl*1* six*1* vf> k1> *1* *J k1* kL*/"、-rr> rr>T>T> T> - ri> r1> r1>、voidshow / I *4*;voidmain(PA2a(7, 5, 10);cout«a . geta«endl ;cout«a . getb«endl ;a. show;)六、3.综合应用题(2题)48.使用VC6打开考生文件夹下的工程test3_3,此工程包含一个源程 序文件test3_3.cpp,其中建立了普通的基类base用于存储边的信息,建 立派生类triangle和square,用于存储三角形和正方形的信息。按要求 完成下列操作,将类定义补充完整。(1)定义基类base的保护数据成员x和y用于记录边的长度,它们都是 int型的数据。请在注释“*1*”之后添加适当的语句。完成基类base默认构造函数的定义,把数据成员x和y分别初始化 为参数a和b的值,要求使用作用域符“:"。请在注释“*2*之后添 加适当的语句。完成派生类triangle函数disp的定义,使其以“三角形面积:”的格式 将三角形的面积输出到屏幕上。请在注释“*3*”之后添加适当的语句。 (4)添写派生类square的默认构造函数的定义,使其调用基类的构造函数,记录下正方形的边长信息a,其缺省值为0。请在注释“*4*“之后添加适当的语句。输出结果如下: 三角形面积:200 正方形面积:400 注意:除在指定位置添加语句之外,请不要改动程序中的其他内容。源程序文件test3_3.cpp清单如下:#include < iostream.h > class base protected:* *public:base(int a,int b)* 2 * virtual void disp()cout < < "调用 base 基类"< < endl ;) );class triangle:public base public:triangle(int a,int b):base(a,b); void disp()* 3 *);class square:public basepublic:* 4 *void disp()cout <<"正方形面积:"< < x*y < < endl;);void main() (base *p;triangle t(20,20);square s(20);p=&t;p > disp();p=&S;p- > disp(); 49.使用VC6打开考生文件夹下的工程MyProjl3。此工程包含一个源程 序文件MyMainl2.cppo程序中定义了两个类Base和Derived,但类的 定义并不完整。请按要求完成下列操作,将类的定义补充完成:定义类shapes的保护成员x和y,它们都是整型变量。请在注释“/* *1*"之后添加适当的语句。完成构造函数shapes(intd,intw)定义,使类shapes的保护成员x、y分 别初始化为d、w,并分别具有默认值0、0。请在注释“/* *2* *”之后添 加适当的语句。完成类shapes的成员函数setvalue(int d,int w)的定义,shapes类的数 据成员x和y分别被设置成d和wo请在注释“/* *3* *”之后添加适当 的语句。二、单选题(13题)11 .模板参数表中参数使用的分隔符号是A., B.; C./ D.以上都不是12 .已知函数fun的原型为int fun(int, int, int);下列重载函数原型中错误的是A.char fun(int, int);B.double fun(int, int, double);C.int fun(int, char*);D.float fun(int, int, int);13 .14 .有下列程序:#include<stdiO. h>将类slopes的成员函数voiddisp()设置成纯虚函数。请在注释“* *4* ”之后添加适当的语句。注意:除在指定位置添加语句之外,请不要改动程序中的其他内容。源程序文件MyMainl3.cpp清单如下:/MyMain 13,cpp#include < iostream >using namespace std ;class shapes (* *public :* * *2* * *void setvalue(int d, int w) class square : public Shapes/* *3*4*public :void disp()(cout< <x*y < <endl ;);int main()(shapes *ptr ;square si ;ptr=&s 1 ;ptr- > setvalue(10, 5); ptr- > disp();return 0 ;参考答案l.C解析:如果在子类中要访问父类的函数应用“运算符。2 .A解析:const int*p;是只能改变指针地址int * const p;是只能改变* P的内容,const int * const p;是指针的地址和*p的内容都不能改变, int * p;是两者都能改变。3 .A解析:将数组传递给函数时,实际上是传递数组第一个元素的地址 给函数,即数组的首地址。4 .C解析:本题考查for循环条件中三个表达式的执行顺序。首先执行 表达式一,然后执行表达式二,如果表达式二为真,则循环体执行,然 后执行表达式三,接着继续执行表达式二,如此循环。考生要注意的是, 本题中表达式三中包含了变量x的增量操作,因此可以由表达式二和三 一起控制循环体的执行次数。本题正确答案为C。5.B6 .D解析:C+中用友元函数重载运算符至少有一个参数,重载一目运 算符要有一个参数,重载二目运算符要有两个参数。7 .C解析:软件测试的目标是在精心控制的环境下执行程序,以发现程 序中的错误,给出程序可靠性的鉴定。测试不是为了证明程序是正确的,而是在设想程序有错误的前提下进行 的,其目的是设法暴露程序中的错误和缺陷。由于测试的这一特征,一般应当避免由开发者测试自己的程序。测试只能说明程序有错,而不能证明程序无错,希望通过有限次的测试 就能发现程序中的所有错误是不可能的,即完全测试是不可能的。因此,选项A)与D)中的说法都是错误的。调试也称排错。.测试的目的是暴露错误,而调试的目的是发现错误的位置,并改正错误。 .经测试发现错误后,可以立即进行调试并改正错误;经过调试后的程序 还需进行回归测试:以检查调试的效果,同时也可防止在调试过程中引 进新的错误。因此,选项B)中的说法也是错误的,而选项C)中的说法是正确的。8CC。【解析】树具有明显的层次关系,即树是一种层次结构。在树结 构中,根结点在第一层上。当树为非空时,树中有且只有一个根结点, 当树为空时,树中根结点的数目为0。9 .C10 .A11 .A12 .D解析:重载函数至少要在参数个数或参数类型上有所不同。选项D)的 重载函数只有返回值不同,其他(参数个数及类型)完全相同。因此,本 题答案为D)。13.D本题考察的是同名局部变量和全局变量的作用域之间的关系。同时考察了静态变量的特点:退出函数和进入函数并不影响静态变量的值。因此,循环多次。实际上完成静态变量的累加。即1+2+3+4+5。其值为15,故答案为D。14.AAo【解析】从程序的输入格式控制方法判断,输入时各变量之间没有 分隔符,当输入相应的变量对应的值时,相应的变量能够得到对应的 值,可以输出要求的结果。15.CCo【解析】函数Demo为构造函数,而Demo(constDemo&x)为复制 构造函数。C+在创建一个对象时,会自动调用类的构造函数,所以 语句"Demoa, d;"将调用函数Demo2次。当一个对象作为实参传递给 函数时为初始化形参,要调用拷贝构造函数;在函数返回一个对象时 调用拷贝构造函数。由此可知语句d=userCode(a);调用拷贝构造函数 3次。16.D冒泡排序、简单插入排序与简单选择排序法在最坏情况下均需要比 较n(n-l)/2次,而堆排序在最坏情况下需要比较的次数是nlog2n。故答 案为D选项。17.B18.AAo【解析】选项A中,重载函数中是允许使用默认参数的;为了使 重载函数有意义,不要使用重载函数来描述毫不相干的函数;重载函 数中编译是根据参数表进行选择的,包括参数的个数和类型。19.AAo【解析】枚举类型定义了一些整型符号常量的集合,使用枚举类型 时应该注意以下几点:枚举类型的第一个常量默认值是0;枚举类型常 量的值允许彼此相同;虽然枚举类型常量是整数类型,但是不允许使 用整数直接赋值给枚举类型变量,也不允许与整数进行运算,只可以 与整数进行比较。20.C解析友元函数的定义既可以在类内部进行,也可以在类外部进行。 它提高了程序的运行效率,但破坏了类的封装性和隐藏性,使得类的非 成员函数可以访问类的私有成员。21.AAo【解析】软件测试是为了发现错误而执行程序的过程。软件测试要 严格执行测试计划,排除测试中的随意性。程序凋试通常也称 Debug,对被调试的程序进行“错误”定位是程序调试的必要步骤。22.D用类型修饰符const声明的变量,必须在声明时进行初始化。因此,选 项A错误。常成员函数不能更新对象的数据成员。因此,选项B错 误。静态成员函数不能直接访问类中说明的非静态成员。因此,选项 C错误。只有选项D是正确的。23.BBo【解析】voidf(int*X, int&。y);第一个参数需要取值,第二个参 数需要取地址,所以为vl为取值,&Lv2为取址。24.软件生命周期软件生命周期解析:通常,将软件产品从提出、实现、 使用维护到停止使用退役的过程称为软件生命周期。25.Base:fun() ; Base:fun();解析:此题考查的是虚基类的使用。使 用符号“:”可以用来限定要访问的成员所在的类的名称。在派生类中对 基类成员的访问应该是唯一的,但是,多继承情况下就需要通过使用对 象作用域分辨来解决这种对基类成员访问的二义性问题。26 .不能不能27 .类类28 .read29 .成员函数成员函数解析:C+中,只有类的成员函数才能说明为虚 函数。这是因为,虚函数仅适用于有继承关系的类对象,所以普通函数 不能说明为虚函数。30 .对象对象解析:将属性、操作相似的对象归为类,也就是说,类是 具有共同属性、共同方法的对象的集合。31 .33解析:本题考核静态数据成员。本题程序中把变量s定义为静态 数据成员,它被MyClass类的所有对象所共享,但它不属于类的任何一 个对象,它的作用域是类范围。在类MyClass的构造函数中,每创建一 个对象,s就增1,由此可知s用来记录建立对象的个数。由于创建对象 指针P时并不会调用构造函数,所以s最后的值是3。32.构造函数构造函数33.134 .类类解析:在面向对象方法中,类描述的是具有相似性质的一组对 象。所以,属性与操作相似的一组对象称为类。35 .逗号、class 逗号、class36 .(1)应添加“public : "。n(2)“inti”应改为 “inti(10);n“i+ +'应改为“i; ”。n【解析】本题主要考查的是成员的访问属性。成员的访问属性有公有、 保护和私有3种,而默认的访问属性为私有,只有公有成员才能通过类 的对象被访问。故应在构造函数前添加“public :",否则该类无法被实例 化。变量的初始化可以通过“二”号,也可以和初始化对象一样添加构造 参数,题目已要求使用后者。本题要求输出5个数,while的循环变量i 每次减1,在i>5时循环,故i初始化应为10。若循环中i每次增1,则 循环永远不会退出。37 .(1)应改为“ein. getline(str, 120, ?);应改为“while(st巾)”。(3)应改为“if(stri>=a& & stri<=2)?,。【解析】本题中要求以输入字符“?”为结束符,用于字符输入的流成员 函数getline函数读入一行字符,格式为“cin. getline(字符数组,字符 个数,终止标志字符)”,所以第1处改为“cin. getline(str,120, ?); 第2处的“while(str)”语句应该是判断字符串str中的每一 个字符是否为结束符,若不是结束符,在循环中判断每一个字符是否 为小写,若为小写,则转换。所以应该修改为“while(stri)”。第3处的 “if(stri>=a)”语句是判断字符stri是否为小写字符,而现有的语句只 是判断字符是否大于a,但是小写字符应该是a到2,所以修改为4tif(stri>=a& &stri>=z),038.(1)应改为“ein . getline(str, 120, ?);n(2)应改为 "while(stri)" on(3)应改为 uif(stri>=a & & stri<=2),on【解析】本题中要求以输入字符“?”为结束符,用于字符输入的流成员 函数getline函数读入一行字符,格式为“cin . getline(字符数组,字符个 数,终止标志字符字 所以第1处改为“cin . getline(str, 120, ?); 第 2处的“while(str)”语句应该是判断字符串str中的每一个字符是否为结 束符,若不是结束符,在循环中判断每一个字符是否为小写,若为小写, 则转换。所以应该修改为“while(stri)”°第3处的“if(stri>=a)”语句是 判断字符stri是否为小写字符,而现有的语句只是判断字符是否大于a, 但是小写字符应该是a到2,所以修改为“if(stri>=a& &stri>=z)”。39 .(1)应改为"TCobjl(l);n(2)应改为“Objl . SetNumber(lO);n(3)应改为“0bj2 . SelNumber( 100);n解析本题第1处的“TCobjl ; ”语句是声明TC类的对象Objl,根据 TC类构造函数的定义TC(inti),存在整型参数,并且题目要求第一个输 出结果两1,所以补全参数1,即第1处的“TCobjKD ; 第2处处的 “objl . number=10 ;”应该是调用成员函数SetNumber赋值。在C + +中 成员函数的使用形式应该是:对象名.成员函数,所以修改为 “objl . SetNumber(lO); 类是对象的抽象,而对象是类的具体实例。 第3处叮(3.5©1m111'(100);”语句中的立为类,并不是对象,这里 应该使用定义的对象,即。切2 .所以将语句修改为 “obj2 . SetNumber(lOO);40 .(1)应改为"usingnamespacestd ;n(2)应改为“outl . open('l . txt', ios : binary | ios : app);"。n(3)应改为“outl . put(si);n【解析】本题第1处的“usingstd/是在程序中弓I入标准命名空间std, 对于C+ +中引入标准命名空间的格式,缺少namespace,所以第1处 的语句修改为“usingnamespacestd ;第2处,调用成员函数open中,输入、输出方式是在ios类中定义的,所以“outl .open('l .txt', binary | app);”语句缺少类ios,即第2处的语句修改为“outl .open,1 .txt ios : binary | ios : app) ,广。第3个标识应该用流成员函数put输出字符,所 以第3处的语句修改为“outl . put(si)41 .应改为"usingnamespacestd;(2)应改为"outl. op