《08年到14年c真题》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
全国2008年10月高等教育自学考试C++程序设计试题课程代码:04737ー、单项选择题(本大题共20小题,毎小题1分,共20分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。错选、多选或未选均无分。1.对C卄语言和C语言的兼容性,描述正确的是()A.C++兼容CB.C++部分兼容CC.C++不兼容CD.C兼容C++2.在C++中使用流进行输入输出,其中用于屏幕输出的对象是()A.cerrB.cinC.coutD.cfile3.对使用关键字new所开辟的动态存储空间,释放时必须使用()A.freeB.createC.deleteD.realse4.如没有使用private关键字定义类的数据成员,则默认为()A.privateB.publicC.protectedD.friend5.使用值传递方式将实参传给形参,下列说法正确的是()A,形参是实参的备份B.实参是形参的备份C.形参和实参是同一对象D,形参和实参无联系6.在函数调用时,如某ー默认参数要指明一个特定值,则有()A・其之前所有参数都必须赋值B.其之后所有参数都必须赋值C.其前、后所有参数都必须赋值D.其前、后所有参数都不必赋值7.设存在函数intmax(int,int)返回两参数中较大值,若求22,59,70三者中最大值,ド列表达式不正确的是()A.intm=max(22,max(59,70));B.intm=max(max(22,59),70);C.intm=max(22,59,70);D.intm=max(59,max(22,70));8.下列哪个类型函数不适合声明为内联函数()A,函数体语句较多B.函数体语句较少C.函数执行时间较短D.函数执行时间过长9.intFunc(int,int);不可与下列哪个函数构成重载()A.intFunc(int,int,int);B.doubleFunc(int,int);
1C.doubleFunc(double,double);D.doubleFunc(int,double);10.对类中声明的变量,下列描述中正确的是()A.属于全局变量
2B,只属于该类C.属于该类,某些情况下也可被该类不同实例所共享D.任何情况下都可被该类所有实例共享10.类的私有成员可在何处访问()A.通过子类的对象访问B,本类及子类的成员函数中C,通过该类对象访问D.本类的成员函数中11.如果没有为ー个类定义任何构造函数的情况下,下列描述正确的是(A.编译器总是自动创建一个不带参数的构造函数B.这个类没有构造函数C.这个类不需要构造函数D.该类不能通过编译12.ー个类可包含析构函数的个数是()A.0个B.1个C.至少ー个D.〇个或多个13.this指针存在的目的是()A.保证基类公有成员在子类中可以被访问B.保证每个对象拥有自己的数据成员,但共享处理这些数据成员的代码C.保证基类保护成员在子类中可以被访问D.保证基类私有成员在子类中可以被访问14.下列关于类的权限的描述错误的是()A.类本身的成员函数只能访问自身的私有成员B.类的对象只能访问该类的公有成员C.普通函数不能直接访问类的公有成员,必须通过对象访问C.ー个类可以将另ー个类的对象作为成员16.在编译指令中,宏定义使用哪个指令()A.#includeB.#defineC.#ifD.#else17.设类A将其它类对象作为成员,则建立A类对象时,下列描述正确的是()A.A类构造函数先执行C.两者并行执行18.下列描述错误的是()A.在创建对象前,静态成员不存在C.静态成员不能是虚函数19.对于友元描述正确的是()A.友元是本类的成员函数C.友元不是函数B.成员构造函数先执行D.不能确定B,静态成员是类的成员D.静态成员函数不能宜接访问非静态成员B,友元不是本类的成员函数D.友元不能访问本类私有成员第2页共2页
320.在哪种派生方式中,派生类可以访问基类中的protected成员()A.public和privateB.public和protectedC.protectedネロprivateD.仅protected二、填空题(本大题共20小题,每小题I分,共20分)请在毎小题的空格中填上正确答案。错填、不填均无分。21.设要把ー个文件输出流对象myFile与文件"f:\myText.txt相关联,所用的C++语句是:»22.C++中ostream类的直接基类是.23.运算符[]只能用运算符来重载,不能用友元运算符来重载。24.定义虚函数所用的关键字是〇25.vector类中用于返回向量中第1个对象的方法是»26.在C++中,利用向量类模板定义一个具有20个char的向量E,其元素均被置为字符't',实现此操作的语句是27.类的继承是指子类继承基类的和成员函数。28.不同对象可以调用相同名称的函数,但可导致完全不同的行为的现象称为029.指令指示编译器将一个源文件嵌入到带该指令的源文件之中。30.设类A有成员函数voidFun(void);若要定义ー个指向类成员函数的指针变量path来指向Fun,该指针变量的声明语句是:.31.设在程序中使用如下语句申请了一个对象数组:Point*ptr=newPo血[2];则在需要释放ptr指向的动态数组对象时,所使用的语句是。32.在保护派生中,基类权限为Private的成员在派生类中.33.类A有如ド成员函数intA::fiin(doublex){return(int)x/2;}intA::fiin(intx){returnx*2;}设a为类A的对象,在主函数中有ints=a.fun(6.0)+a.fun(2),则执行该语句后,s的值为。34.对象传送的消息一般由3部分组成:接收对象名、调用操作名和。35.将指向对象的指针作为函数参数,形参是对象指针,实参是对象的»36.在使用string类的find成员函数来检索主串中是否含有指定的子串时,若在主串中不含指定的子串,find函数的返回值是。37.在C++中,声明布尔类型变量所用的关键字是.
421.执行下列代码inta=29,b=100;cout«setw(3)«a«b«endl;程序的输出结果是:。22.执行下列代码cout«uHex:”«hex«255;程序的输出结果为〇23.C++语言中可以实现输出ー个换行符并刷新流功能的操控符是0三、改错题(本大题共5小题,每小题2分,共10分)下面的类定义中有一处错误,请用下横线标出错误所在行并给出修改意见。24.#include
5public:voidfl(inta,intb){x=a;y=b;}voidget(){cout«x«,«y«endl;}};main(){fa;a.fl(l,3);aget();}21.#include
6}四、完成程序题(本大题共5小题,每小题4分,共20分)21.完成下面类中的成员函数的定义。classpoint(private:intm,n;public:point(int,int);point(point&);m=a;point::point(){m=t.m;n=t.n;}22.下面是ー个输入半径,输出其面积和周长的C++程序,在下划线处填上正确的语句。#include
7Thelongis:"«l«endl:cout«,rTheareais:”«s«endl;}23.在下划线处填上缺少的部分。
8#include
9private:intm;public:base(){};base(inta):m(a){}intget(){returnm;}voidset(inta){m=a;}};voidmain()(base*ptr=newbase[2];ptr->set(30);ptr=;ptr->set(50);basea[2]={l,9};cout«a[0].get()«f,,"«a[l].get()«endl;cout«ptr->get()«,r»〃:ptr=ptr-l;cout««endl;delete[]ptr;}21.在下面横线处填上求两个浮点数之差的cha函数的原型声明、调用方法。#include
10}floatcha(floatx,floaty)(floatw;w=x-y;returnw;}五、程序分析题(本大题共4小题,每小题5分,共20分)21.给出下面程序的输出结果。#include
11#include
12public:Book(){}Book(constchar*strl,constchar*str2,constintnum){intlen=strlen(strl);title=newchar[len+l];strcpy(title,strl);len=strlen(str2):author=newchar[len+l];strcpy(author»str2);numsold=num;}voidsetbook(constchar*strl,constchar*str2,constintnum){intlen=strlen(strl);title=newchar[len+l];strcpy(title,strl);lcn=strlen(str2);author=newchar[len+1];strcpy(author,str2);numsold=num;〜Book(){deletetitle;deleteauthor;voidprint(ostream&output){output«"书名:"«title«endl;outputw"作者:"«author«endl;output«,,月销售量:"«numsold«endl;}•voidmain(){Bookobjl("数据结构〃,〃严蔚敏〃,200),obj2;objl.print(cout);obj2.setbook(〃C++语言程序设计〃,"李春葆",210);
13obj2.print(cout);}六、程序设计题(本大题共1小题,共10分)21.在三角形类TRI实现两个函数,功能是输入三个顶点坐标判断是否构成三角形#include
144.用于标识十六进制前缀或后缀是A・元C,前缀零5.设存在整型变量intx,则下列句上A.int*p=&x;C.int&p=x;6.在定义类成员时,为产生封装性,A.publicC.protected7设函数voidswap(int&,int&)*则执行swap(a,b)后,a、b值分A.10,10C.15,108.函数默认参数在函数原型中说明,A.前部C.后部9.设存在函数intmin(int,int)返回jA.intm=min(min(15»26),minB.intm=min(15,26,47);C.intm=min(15,min(47,26));D.intm=min(min(47,26),16);10.下列函数不能和函数voidprint(A.intprint(int);()B.后缀L或eD.前缀Oxラ其它三项含义不同的是()8.1nt&p=x;D.int&p=x;则需使用哪个关键字()B.publish□.privateキ交换两形参的值,如两整型变量inta=10;intb=15;别为()B.10,15D.15,15默认参数必须放在参数序列的()B.中部D.两端两参数中较小值,若求15,26,47三者中最小值,下列表达式中错误的是()(15,47));char)构成重载的是()B.voidprint(char,char);C.intprint(char);11.在下列成对的表达式中,运算结A.7/2和7.0/2.0C.7.0/2和7/2D.voidprint(int,int);果类型相同的ー对是()B.7/2.0和7/2D.7.0/2.0和7.0/212.内联函数的特点是()A.减少代码量,加快访问速度C.增加代码量,减缓访问速度13.类的私有成员可在何处被访问(A.本类的成员函数中B.减少代码量,减缓访问速度D.增加代码量,加快访问速度)B.本类及子类的成员函数中C.通过对象名在任何位置D.不可访问14.类的构造函数在以下什么情况下会被自动调用()A.定义成员函数时B.定义对象时C.定义数据成员时D-定义友元函数时15.下列关于析构函数描述正确的是()A.可以重载B.函数体中必须有delete语句C.返回类型必须是void类型D.不能指定返回类型16.设有函数TSum(Tx,Ty){returnx+y;),其中T为模板类型,则下列语句中对该函数错误的使用是()A.Sum(1,2);B.Sum(3.0,2.2);C.Sum('A','C');D.Sum("A","C");17.下列哪个编译指令属于条件编译指令()A.#includeB.#defineC.#elseD.#pragma18.关于类的静态成员函数描述错误的是()
15A.在创建对象前不存在B.不能说明为虚函数C.不能直接访问非静态函数D.不是对象的成员14.如果类A被声明成类B的友元,则()A.类A的成员即类B的成员B.类B的成员即类A的成员C.类A的成员函数不得访问类B的成员D.类B不一定是类A的友元20.派生类的对象可以访问以下那种情况继承的基类成员(A.私有继承的私有成员B.公有继承的私有成员C.私有继承的保护成员D.公有继承的公有成员二、填空题(本大题共20小题,毎小题1分,共20分)请在每小题的空格中填上正确答案。错填、不填均无分。21.若使用标准输出流把整型变量a的值输加到屏幕匕实现此操作的C++语句是〇22.C++将数据从ー个对象流向另ー个对象的流动抽象为“流”,从流中获取数据的操作称为。23.执行下列代码intb=100;cout«"Hex:"«hex«b;程序的输出结果是。24.静态联编所支持的多态性称为的多态性。25.C++程序必须有且只有一个主函数,其函数名为«26.写出声明一个复数对象的语句,并使该对象被初始化为2.2+13,此声明语句是〇27.若有函数定义为:intadd(intml=0,intm2=2,intm3=4){returnml+m2+m3;}在主函数中有ints=add(1)+add(0,1)+add(0,1,2);则执行此语句后s的值为.28.C++中使用关键字说明函数为内联函数。29.在源程序中有宏定义:#definePI3.14,则若不想使该宏定义影响到程序的其它地方,可以使用删除该宏定义。30.类和其它数据类型不同的是,组成这种类型的不仅可以有数据,还可以有对数据进行操作的。31.有下列代码inta=0;doubleb=0;cin»a»b:当用键盘输入1.25时,b=〇32.对于类Point而言,其析构函数的定义原型为。33.对象成员构造函数的调用顺序取决于这些对象在类中说明的顺序,与它们在成员初始化列表中给出的顺序34.类的简单成员函数是指声明中不含ヽvolatile、static关键字的函数。35.与操作对象的数据类型相互独立的算法称为。36.从ー个或多个以前定义的类产生新类的过程称为。37.在vector类中向向量尾部插入一ー个对象的方法是。38.C++中用于动态创建对象,并返回该对象的指针的关键字是。39.C++的流类库预定义的与标准输出设备相联接的流是。40.执行下列代码cout«noshowpoint«123.0;程序输出结果是〇
16三、改错题(本大题共5小题,每小题2分,共10分)下面的类定义中有一处错误,请用下横线标出错误所在行并给出修改意见。41.#include
17public:fl(inta,intb){x=a;y=b;}voidprint(){cout«x«y«endl;});main(){fa;a.fl(1.5,1.8);a.print();45.#include
18{cout«"x="«get()«",y=n«y«endl;}};voidmain(){baseb(3);Derivedd(6,7);b.showbase();d.showderived();b.showbase();bl.showbase();base*pb=&bl;pb->showbase();d.showderived();b.showbase();}输出结果如下:x=3x=6,y=7x=6x=6x=6x=6,y=7x=646.下面程序的运行结果如下:B::display()C::display()在下划线处填上缺少的部分。源程序如下:#include
19};voidfun(B*p)p—>display();voidmain()Bb,*pb;Cc;pb=&b;fun(pb);pb=&c;fun(pb);}46.下面程序的运行结果如下:ThisislinelThisisline2Thisisline3在下划线处填上缺少的部分。源程序如下:#include
20五、程序分析题(本大题共4小题,每小题5分,共20分)46.请写出myTextl.txt文本文件中的内容#include
21obj2.copy(obj1);fiinc(obj1,obj2);obj1.print();objl.print();53.给出下面程序的输出结果#includcniostream.hnintmain(){inti=17;while(i>=10)if(—i%4=3)continue;elsecout«Mi=,,«i—«endl;}54.给出下面程序的输出结果#include
22Tx[size];intcurrent;public:Stack(){current=O;}....push(....);-pop(••••););请写出两个函数的过程(如果需要形式参数,请给出形参类型和数量,以及返回值类型)全国2009年10月高等教育自学考试C++程序设计试题课程代码:04737ー、单项选择题(本大题共20小题,每小题1分,共20分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。选均无分。1.对C++中主函数描述正确的是()A.名称为main,可为多个B.名称不限,可为多个C.名称为main,必须有且只能有一个D.名称不限,必须有且只能有一个2.调用声明为intresult(inta,intb)的函数时,正确的方法是()A.result(1,2)B.result(1)、多选或未C.result(0.1,0.3)D.result(1,2,3)3.用于包含GH•标准库iostream的预处理指令是()A.#define
23D.在定义该函数时所指定的数据类型9.函数int&min(int&,int&)返回参数中较小者,设有两整型变量inta=10;intb=15;在执行语句min(a,b)之后,a,b值分别为()A.9,14B.9,15C.10,14D.10,1510.声明函数为内联函数时所使用的关键字为()A.constB.inlineC.shortD.signed11.函数intsum(inta=l,intb=l,intc=3)可与下列哪个函数同时声明()A.doublesum(int);B.charsum(int,int);C.intsum(double);D.intsum(int,int,int);12.函数模板templatevtypenameT>voidFunc(T,T)可具有下列哪种实例化形式()A.voidFunc(float,int)B.voidFunc(char,char)C.voidFunc(int,double)D.voidFunc(bool,float)13.下列访问成员的方式哪个是正确的()A.对象名.对象成员名B.对象指针名.对象成员名C.对象名一►对象成员名D.类名一►对象成员名14.对类A,复制构造函数的原型是()A.A::A(constA&);B.A::A(constA*);C.A::A(constA);D.A::A();15.对classpoint,如使用point*ptr=newpoint[2];创建对象数组,则删除此数组使用的语句是(A.deleteptr[2];B.delete[]ptr;C.deleteptr[];D.delete[2]ptr;16.下列哪个编译指令不属于条件编译指令()A.#ifB.#elseC.#endifD.#error17.类A中存在静态数据成员x,设a和b是类A的两个对象,在执行a.x=10之后,b.x的值为()A.未初始化B.等于a.xC,等于〇D.随机18.使用string.h库操纵字符串时,将两个字符串连接成一个字符串的函数是()A.strlen()B.strcap()C.strcat()D.strcmp()19.基类中的public成员,通过public派生,其在派生类中的访问权限为()A.不可访问B.privateC.protectedD.public20.不同对象调用同名函数,但导致完全不同行为的现象称为()A.抽象B.封装C.继承D.多态性
24二、填空题(本大题共20小题,每小題1分,共20分)请在每小题的空格中填上正确答案。错填、不填均无分。9.在C++语言的面向对象设计框架中,是程序的基本组成单元。10.执行代码doublepi=3.1415192;cout<
2542.#include
26strcpy(name,n);}};voidmain(){Bb(〃Hello!");cout«"Name:"«b.getName();)四、完成程序题(本大题共5小题,毎小题4分,共20分)42.将下面程序补充完整,使程序输出结果为:BeginWelcomeShowEnd程序如下:#include
27{a=x;b=y;}voiddisplay(){cout«a«*r«b«'='«a*b;}};intmain(){Aa(1,1);for(inti=1;i<=9;i++){for(intj=l;;j++){a.set(j,i);a.display();cout«cout«endl;return0;}42.将ド面程序补充完整,使程序可以输入学生信息并计算平均成绩。//include
28cout«"成绩"«i+l«":";cin»score[i];}Students(name,score);s.Show();}42.将下面程序补充完整,使程序可以正常运行,并释放内存。#include
29};classB:publicA{private:charstr[32];public:voidGetA(){cout«,fClassA"«endl;}constchar*GetB(){}B(char*s){strcpy(str»s);}voidmain(){A*a;Bb("ClassBz,);a=;a->GetA();cout«b.GetB()«endl;return;五、程序分析题(本大题共2小题,毎小题5分,共10分)51.#include
30classB:publicA{intb;public:B(intaa=0,intbb=0):A(aa){b=bb;}~B(){cout«"DestructorB!u«b«endl;});voidmain(){Bx(5),y(6,7);)六、程序设计题(本大题10分)51.下面Shape类是个表示形状的抽象类,Area()为求图形面积的函数。请从Shape类派生梯形类(Trapezoid)、圆形类(Circle),三角形类(Triangle),并给出具体的求面积函数。其中,所有派生类计算面积需要用到的参数由构造函数给出,梯形面积计算需要上底、下底和高,三角形面积需要底和高,圆形面积需要半径。形状的抽象类声明如下:classShape{public:virtualdoubleArea()=0;
31全国2010年10月高等教育自学考试C++程序设计试题课程代码:04737ー、单项选择题(本大题共20小题,毎小题1分,共20分)在毎小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。错选、多选或未选均无分。1.C++中注释“〃”的有效范围是()A.从’‘〃"开始到行尾B.从“〃”开始到下ー个“〃”C.“〃”及其后一个字符D.从“〃”开始到程序尾2.假定MyClass为一个类,则该类的复制构造函数的声明语句为()A.MyClassft(MyClassx);C.MyClass(MyClass&x);3.下列选项不是C++关键字的是()A.typedefC.bool4.用于标识十进制常量的前缀或后缀是(A.无前后缀C.前缀〇5.设intx=56;intr=x:若cout«&x;A.56C.0012FF7BB.MyClass(MyClassx);D.MyClass(MyClass*x);B.voidD.inc)B.后缀L或1D,前缀Ox显示0012FF7A,则cout«&r:输出值为(B.0012FF7AD.未知6.使用ド列哪个流格式控制符可设置转换基数为ハ进制()B.octA.decC.hexD.endl7.C++中是否允许在类结构中定义函数()A,不允许B.允许C.仅允许定义构造函数D.只不允许定义构造函数8.设函数voidsubone(int&)将形参减1,如有整型变量intk=10»则执行subone(k);后,k的值为(A.9B.10C.11D.未知9.对函数intmax(inta,intb=0,intc=0,intd二〇,inte=0);下列调用方式正确的是()A.intm=max(10,11,12,13,14);B.intm=max(10,,12,13,14);C.intm=max(10,11,,13,14);D.intm=max(10,11,12,,14);10.类MyClass的定义如下:classMyClass{public:MyClass(){}MyClass(inti){value=newint(i);}int*value;};若要对value赋值,则下面语句正确的是()A.MyClassmy;my.value=10;B.MyClassmy;*my.value=10;C.MyClassmy;my.*value=10;D.MyClassmy(10);
329.包含哪种语句的函数不能声明为内联函数()A.变量定义B.if……elseC.位操作D.switch10.声明函数模板的关键字是()A.inlineB.templateC.constD.short11.对于类中的成员,使用public修饰,表明该成员的访问权限是()A.公有的B.私有的C.保护的D.不可见的12.ー个类中是否可以允许ー个无参数构造函数和一个全部都是默认参数的构造函数共存()A,不允许B.允许C.无法确定D.视构造函数的函数,可确定13.析构函数的参数个数为()A.0个B.1个C.至少1个D.多于1个14.非静态成员函数都会有一个隐含指针,它是()A.self指针B.this指针C.current指针D.one指针17.下列访问公有静态成员的方式,错误的是()A.类名::静态成员名B.对象名.静态成员名C.对象指针ー>静态成员名D.对象指针.静态成员名18.声明友元使用下列哪个关键字()A.classB.constC.friendD.virtual19.派生类继承了基类的()A.所有成员B•部分成员C.数据成员D,成员函数20.基类private成员,通过public:派生,其在派生类中为()A.privateB.protectedC.publicD.不可访问二、填空题(本大题共20小题,每小题1分,共20分)请在每小题的空格中填上正确答案。错填、不填均无分。21.执行下列代码doublepi=3.141592;cout«setprecision(1)«pi;程序的输出结果是〇22.要使用STL库提供的对数组进行升幕排序算法,在源程序中需要包含的头文件是»23.C++语言中动态回收内存的关键字是〇24.执行下列代码intb=100;cout«,,0ct:,,«oct«b;程序的输出结果是〇25.C++语言中用于定义ー个类的关键字是,26.为了使用C++语言标准程序库提供的string类,在程序中必须使用的文件包含命令是ー27.在程序中执行int*a=newint之后,若a为空指针,则表明
3321.C++函数中传递对象地址值是使用作为参数。22.将指向对象的指针作为函数参数,形参是对象指针,实参是对象的.23.C++函数有库函数(标准函数)和两类。24.C++中通过对类的对象进行初始化。25.UML中实例连接反映对象之间的静态关系,消息连接描述对象之间的关系。26.若将一个对象说明为常对象,则通过该对象只能调用它的成员函数,不能调用其它成员函数。27.静态成员函数是的成员,不是对象的成员。28.私有继承时,在派生类中基类的protected权限变为。29.若使用ー个表达式的含义能解释为访问多个基类中的成员,则这种对基类成员的访问就是不确定的,称这种访问具有。30.如果在类模板的定义中有一个静态数据成员,则在程序运行中会产生静态变量。31.vector类中用于获取向量可以容纳最多对象的个数的方法是〇32.C++用于运算符重载的关键字是。33.含有的类称为抽象类,它只能作为基类来使用。三、改错题(本大题共5小题,每小题4分,共20分)下面的每题中有一处错误,请用下横线标出错误所在行并给出修改意见34.Sinclude 34}classpointl}private:floatx,y;public:f(floata,floatb){x=a;y=bf(){x=l;y=l;}voidgetx(){cout< 35a[i]=a[i]+b[i];returna;)voidmain(){Inta[5]={1,2,3,4,5);intb[5]={100,200,3,4,51,*p;for(inti=0;i<2;i++)P=//调用函数ffor(;pくa+5;p++)cout««endl;}50.下列程序将x,y,z按从小到大的顺序排列并将结果返回给实参,在横线处填入正确的内容。template 36";doubleb=-5.8976;cout«F(b)«" 37";cout«F(5)くく“'n";}52.给出下面程序的输出结果#includeくiostream>usingnamespacestd;classA(private:intX,Y;public:A(intmyx,intmyy){X=myx;Y=myy;}voidshow(){coutくく"X=”くくXくく"Y二"くくY«endl;}}:classB:publicA(private:intH,W;public:B(intmyx,intmyy,intmyh,intmyw):A(myx,myy)[H二myh;W二myw;}voidshow(){coutくく"H二”くく 38Hくく";W二"くくW< 39C.其前、后所有参数都必须赋值D.其前、后所有参数都不必赋值6.设存在函数intmax(int,int)返回两参数中较大值,若求22,59,70三者中最大值,下列表达式不正确的是(〇A.intm=max(22,max(59,70));B.intm=max(max(22,59).70);C.intm-max(22,59,70);D.intm=max(59,max(22,70));7.下列哪个类型函数不适合声明为内联函数(A)A,函数体语句较多B,函数体语句较少C.函数执行时间较短D.函数执行时间过长8.intFunc(int,int):不可与下列哪个函数构成重载(B)A.intFunc(int,int,int);B.doubleFunc(int,int);C.doubleFunc(double,double);D.doubleFunc(int,double);11.对类中声明的变量,下列描述中正确的是(C)A.属于全局变量B.只属于该类C.属于该类,某些情况下也可被该类不同实例所共享D.任何情况下都可被该类所有实例共享12.类的私有成员可在何处访问(C)A.通过子类的对象访问B.本类及子类的成员函数中C,通过该类对象访问D.本类的成员函数中13.如果没有为ー个类定义任何构造函数的情况下,下列描述正确的是(A) 40A.编译器总是自动创建一个不带参数的构造函数B・这个类没有构造函数C.这个类不需要构造函数D.该类不能通过编译12.ー个类可包含析构函数的个数是(B)A.0个B.1个C.至少ー个D.0个或多个13.this指针存在的目的是(B)A.保证基类公有成员在子类中可以被访问B.保证每个对象拥有自己的数据成员,但共享处理这些数据成员的代码C.保证基类保护成员在子类中可以被访问D.保证基类私有成员在子类中可以被访问14.下列关于类的权限的描述错误的是(B)A.类本身的成员函数只能访问自身的私有成员B.类的对象只能访问该类的公有成员C.普通函数不能直接访问类的公有成员,必须通过对象访问D.ー个类可以将另ー个类的对象作为成员17.在编译指令中,宏定义使用哪个指令(B)A.^includeB.^defineC.#ifD.ttelse18.设类A将其它类对象作为成员,则建立A类对象时,下列描述正确的是(B)B.成员构造函数先执行D.不能确定B.友元不是本类的成员函数D.友元不能访问本类私有成员A.A类构造函数先执行C.两者并行执行19.下列描述错误的是(A)A.在创建对象前,静态成员不存在B.静态成员是类的成员C.静态成员不能是虚函数D.静态成员函数不能直接访问非静态成员20.对于友元描述正确的是(B)A.友元是本类的成员函数C.友元不是函数二、填空题(本大题共20小题,每小题1分,共20分)请在每小题的空格中填上正确答案。错填、不填均无分。21.设要把ー个文件输出流对象myFile与文件“f:\myText.txt”相关联,所用的C++语句是:myFile.open("f:\\m¥Text.txt");。22.C++中ostream类的直接基类是ios类_〇23.运算符[]只能用一成员ー运算符来重载,不能用友元运算符来重载。24.定义虚函数所用的关键字是virtual。25.vector类中用于返回向量中第1个对象的方法是_front()_»26.在C++中,利用向量类模板定义•个具有20个char的向量E,其元素均被置为字符'ピ,实现此操作的语句是vector 41voidFun(void);要定义ー个指向类成员函数的指针变量pafn来指向Fun,该指针变量的声明语句是void(A::・ゆafn)(void);031.设在程序中使用如下语句申请了一个对象数组:Point*ptr=newPoint[2];则在需要释放ptr指向的动态数组对象时,所使用的语句是delete]utr;。32.在保护派生中,基类权限为Private的成员在派生类中一不可访问33.类A有如下成员函数intA::fun(doublex){return(int)x/2;}intA::fun(intx){returnX*2;}设a为类A的对象,在主函数中有ints=a.fun(6.0)+a.fun(2),则执行该语句后,s值为_7_。34.对象传送的消息一般山3部分组成:接收对象名、调用操作名和必要的参数一。35.将指向对象的指针作为函数参数,形参是对象指针,实参是对象的一地址值_。36.在使用string类的find成员函数来检索主串中是否含有指定的子串时,若在主串中不含指定的子串,find函数的返回值是—T_。37.在C++中,声明布尔类型变量所用的关键字是_bool_。38.执行下列代码inta=29,b=100;cout«setw(3)<main(){intx=5,y=6;constint*p=&x;*P=y;cout«*p«endl;)42.#include 42public:voidf(floata){x=a;}voidf(){x=0;}friendfloatmax(point&a,point&b);};floatmax(point&a,point&b){return(a.x>b.x)?a.x:b.x;)main(){pointa,b;a.f(2.2);b.f(3.3);cout«a.max(a,b);}32.#includeくiostream.h>template 43pi=3.14159;voidmain(){doubler;coutくく"r=";double1=2.0*pi*r;doubles=pi*r*r;cout<<" 44Thelongis:"«l«endl;coutくくTheareais:"«s< 45请根据输出数据在下面程序中的下划线处填写正确的语句。源程序如下:#include 46floatc=;//调用函数chacout< 4732.给出下面程序的输出结果#include 48private:floatx,y;public:point(floata,floatb){x=a;y=b;}point(){x=0;y=0;}voidset(floata,floatb){x=a;y=b;}floatgetx(){returnx;}floatgety(){returny;}};classtri{pointx,y,z;floatsi,s2,s3;public:....settri(....);//用于输入三个顶点坐标....test(....);//用于判断是否构成三角形};请写出两个函数的过程(如果需要形式参数,请给出形参类型和数量,以及返回值类型)全国2011年10月高等教育自学考试C++程序设计试题课程代码:04737ー、单项选择题(本大题共20小题,每小题1分,共20分)在毎小题列出的四个备选项中只有一个是符合题目要求的ー请将其代码填写在题后的括号内。错选、多选或未选均无分。1.C++中注释“/*”的有效范围是()A,从“/*”开始到行尾BC.从“/*”开始到“〃”为止D2.如想使用std命名空间,正确的程序语句是(A.usingstd;BC.usingnamespace;D3.下列选项中不是C++关键字的是()A.boolBC.floatD4.用于标识长整型常量的前缀或后缀是(A,无前后缀BC.前缀零D5.对于new类型名[size]描述正确的是(A.申请可以存储size个字节的空间B,申请可以存储1个该数据类型的空间,从“/*”开始后不终止,从“/*”开始到“*/”为止).namespacestd,.usingnamespacestd:.int.var).后缀L或I.前缀Ox) 49C,申请可以存储size个该数据类型对象的空间D,申请可以存储1个字节的空间6.使用下列哪个流格式控制符可以设置转换基数为十六进制()A.decB.octC.hex7.构造函数用于()D.cndlA,定义对象B.初始化对象C.清除对象D.普通计算8.设函数voidswap(int,int)将交换两形参数值,b值分别为()如有两整型变量inta=10;intb=15,则执行sw叩(a,b):之后,aA.15,10B.15,15C.10,15D.10,109.设函数voidsubone(int)将形参值减1,如有整形变量intb=10;则执行subone(b)后,b的值为()A.9B.10C.11D.未知10.CH中函数返回值类型不可以是()A,引用B.指针C.结构D.数组11.声明函数函tFunc(inta=0,intb=3,intc=4)相当于声明了几个函数形式()A.1B.2C.3D.412.C++中专门定义一个仅在模板中使用的参数类型的关键字是(A.constB.inlineC.shortD.typename13.对于类中的成员,使用private修饰,表明该成员的访问权限是()A.公有的B.私有的C.保护的D.不可见的14.使用new创建的对象,对其生命周期描述正确的是()A.由系统决定B,由用户控制C.全局生命周期D.永久存在15.析构函数被调用的时间点是()A.対象被创建时B.対象被销毁时C.不会被调用D.主函数被调用时16.対象的构造函数调用顺序取决于()A.对象成员在初始化列表中给出的顺序B.对象成员在类中声明的顺序C.对象成员与在初始化列表中顺序和类中声明顺序均有关D.随机顺序17.下列对静态成员函数描述正确的是()A.静态成员函数中可使用1个this指针B.静态成员函数中不能使用this指针C.静态成员函数中可使用多个this指针D.静态成员函数中只可使用1个that指针18.友元的声明可出现在(B.类的公有部分D.类的任何部分A.类的私有部分C.类的保护部分19.在下列派生中,子类和父类间是isa关系的是() 50A.privateB.protectedC.publicD.publish20.面向对象不仅进行功能抽象,还要进行()A.动态抽象B1消息抽象C•数据抽象D.算法抽象二、填空题(本大题共20小题,每小题1分,共20分)请在每小题的空格中填上正确答案。错填、不填均无分。21,在调用函数fl()的过程中,又调用了函数fl(),这种调用称为调用。22.C++中重载“+”运算符的函数名是«23.设为类A添加一个纯虚函数Fun,其第一个参数类型为整型,第二个参数类型为字符型,函数返回值类型为整型。实现此操作的语句是。24.C++程序的头文件和源程序文件扩展名分别为和.cpp。25.在C++中,利用向量类模板定义一个具有20个int类型的向量B,实现此操作的语句是:。26.通过私有派生,基类的私有和不可访问成员在派生类中是不可访问的,而公有和保护成员这时就成了派生类的27.字符串类型的变量一般用和字符数组类型的变量表示。28.在ー个C++程序中,每个变量都必须遵循的原则。29.在常成员函数里不能更新对象的数据成员,也不能调用该类中没用关键字修饰的成员函数。30.UML是ー种可视化建模语言,主要用于面向对象的和建模。31.复制构造函数采用拷贝方式使用已有对象来建立新对象,又称为函数。32.对于C++类中的成员,若未使用访问权限关键字进行说明,默认的权限是。33.对象的行为是定义在对象属性上的ー组的集合。34.设intmax(int,int)表示计算两个整数中的最大值,则执行语句"cout«max(max(2,3),max(7,8));”的输出结果是。35.函数fim的返回值是字符指针类型,该函数有两个参数,其中一个参数是字符类型,另ー个参数是int类型引用,声明函数fun的原型的语句为。36.string类中用于交换两个字符串对象的值的成员函数为〇37.无论变量x和y是整型还是浮点类型,x*y都表示这两个变量的积,这是典型的的例子。38.执行下列代码inta=29,b=1001;cout«a«setw(6)«b«endl;程序输出结果是:〇39.在C++中,赋值表达式kx++的含义是〇40.设有如下定义:intx;若要将整型变量y定义为变量x的引用,则应使用的语句是〇三、改错题(本大题共5小题,每小题4分,共20分)下面的每题中有一处错误,请用下横线标出错误所在行并给出修改意见41.#includc 51classf{private:Tx,y;public:voidfl(Ta,Tb){x=a;y=b;}Tmax(){retum(x>y)?x:y;}};voidmain(){f 52voidmain(){pointa;a.init(20,30);cout«a.getx()«endl;}四、完成程序题(本大题共5小题,每小题4分,共20分)22.完成下面类中成员函数的定义。classtest{private:intnl;floatfl;public:test(int,floatf);test(test&);};test::test(){nl=n;fl=f;}test::test(test&t){nl=t.nl;fl=;}23.在下面程序中的下划线处填上适当的语句,使程序的输出结果如下:11,7711,77源程序如下:#include 5348.在下面程序中的下划线处填上适当的程序,使程序的输出结果如下:x=l,y=2x=30,y=40源程序如下:#include 54#include 5549.请给出下面程序的输出结果#include 562.不同对象调用同一成员函数时,this指针指向()A.不同对象C.无对象B.相同对象D.不确定3.设存在函数intmax(int,int)返回两参数中较大值,若求22,59,70三者中最大值,下列表达式正确的是()A.intm=max(22,max(59,70));B.intm=max(max(22,59),max(59,70));C.intm=max(max(22,70),59);D.以上皆正确4.ー个类可拥有多少个构造函数()A.0个C.1或多个5.在编译指令中,嵌入指令是指()B.1个D.以上皆对A.#includeC.#ifB.#defineD.#else6.设存在数组a,其长度为Len,下列哪项操作是将a中元素复制到数组b中()A.reverse(a+a,Len,b);C.find(a,a+Len,b);7.下列哪个要素不是面向对象的关键要素(A.模块化C.封装性8.下列对于类的描述错误的是()A.类要先声明后使用B.类是具有唯一标识的实体C.两个类可以使用同一个名称B.sort(a»a+Len,b);D.copy(a,a+Len,b);)B.抽象性D.继承性D.组成类的不仅有数据,还可以有对数据进行操作的函数9.使用引用调用方式将实参传给形参,下列说法正确的是()A.形参是实参的备份C.形参和实参共享同一对象10.关于对象的性质,下列描述错误的是(A.同一类对象之间可相互赋值B.不能使用对象数组C.对象可以用作函数参数D.ー个对象可以用作另ー个类的成员11.类的私有成员可在哪里被赋值()A.类体中C.A和BB.实参是形参的备份D.形参和实参无联系)B.该类的成员函数中D.以上都不是12.设存在数组a,其长度为Len,则下列哪个泛型算法用于反转a中各元素()A.reverse(a»a+Len);C.find(a,a+Len,value);B.sort(a,a+Len);D.copy(a,a+Len,b);13.用于标识ハ进制常量的前缀或后缀是(A.无C.前缀零)B,后缀L或1D.前缀Ox14.派生类中继承的基类成员初始化如何进行()A.由派生类构造函数调用基类的构造函数进行B.由派生类构造函数进行 57C.由基类构造函数进行,无需派生类构造函数调用D.以上皆不正确15.对于多重继承,下列描述正确的是()A.所有基类使用相同的派生方式B.每个基类可使用不同派生方式C.只能是public派生D.只能是protected派生16.下列关于类的权限描述错误的是()A.类本身的成员函数可以访问自身的任何成员B.类的对象可以访问该类的所有成员C.普通函数不能直接访问类的公有成员,必须通过成员函数对其访问D.ー个类可以将另ー个类的对象作为成员17.运算符de匕te与哪个函数一起运行()A.构造函数B.析构函数C.主函数D.不与任何函数一起工作18.ー个类可以获得另ー个类的特性的机制称为()A.抽象B.封装C.继承D.多态性19.使用下列哪个格式控制符可设置转换十六进制为十进制()A.decB.octC.hexD.endl20.对引用调用描述正确的是()A.分配新存储空间B.修改己存储空间的名称为引用名C.引用名与已存在存储空间无任何关联D.将引用名标识符与一块己存在储区域相关联,没有分配新存储空间二、填空题(本大题共20小题,每小题1分,共20分)请在每小题的空格中填上正确答案,错填、不填均无分。21.公共派生中,基类的公有成员在派生类中是〇22.若要使用标准输入流机制从键盘输入ー个整数赋给整型变量a,相应的C++语句是。23.UML中对象行为之间的动态关系是通过对象行为之间的依赖关系表现的,称之为»24.C++函数中按引用调用传递参数时使用作为参数。25.在C++中除具有语句和switch语句的函数外,其它函数都可以说明为内联函数。26.C++中规定模板以关键字和一个形参表示开头。27.构造函数不能被继承,・个派生类只能调用它的基类的构造函数。28.vector类中用于获取存放的元素个数的方法是〇29.C++中istream类的直接基类是〇30.要关闭ー个文件输出流对象myFile,所用的C++语句是,31.执行下列代码doublepi=3.141592cout«setprecision(2)«pi;程序的输出结果是〇32.在私有派生中,基类的权限为private的成员,在派生类中。33.C++总共有3种文件流,分别是输入文件流、输出文件流和〇34.C++使用流进行输入输出,其中能捕获键盘输入的对象是»35.在vector类中删除向量中最后ー个对象的方法是。36.函数重载可使ー个函数名具有多种功能,称这种特性为。37.C++语言对C语言做了很多改进,C++语言相对于C语言的最根本的变化是引进了概念。 5838,指令定义ー个标识符及串,在源程序中每次遇到该标识符时,编译器均用定义的串代替之。39.在C++标准输出方式中,要设置输出数据字段宽度width所使用的操控符是。40.设有定义intX:floaty;,则10+x+y值的数据类型是〇三、改错题(本大题共5小题,每小题2分,共10分)下面的类定义中有一处错误,请用下横线标出错误所在行并给出修改意见。41.#include 59a.init(20,30);cout«a.getx()«endl;}四、完成程序题(本大题共5小题,每小题4分,共20分)46.在下面程序的下划线处填上正确的语句,使其得到下面的输出结果。x=2,y=3#includc 60template 61public:Sample(){};{x=a;}{x=a.x-H-+10;}voiddisp(){cout«Mx=n«x«endl;}};voidmain(){Samplesl(2),s2(sl);51.disp();52.disp();}50.输入一个字符串,将其逆序后输出。#include 62';fbr(i=0,j=strlen(a)-l;i<;i-H-,j)t=a[i]:aB]=t;)cout«a«endl;I五、程序分析题(本大题共4小题,每小题5分,共20分)51.(给出下面程序的输出结果#include 63voidmain(){examplex(3);constexampley(2);x.print();y.print();}50.给出下面程序的输出结果#include 64voidadd(){sum+=n;}voiddisp(){cout«Mn=,,«n«",sum:'*«sum«endl;}intSample::sum=0;voidmain(){Samplea(2),b(3),c(5);a.add();a.disp();b.add();b.disp();c.add();c.disp();}50.给出下面程序的输出结果#include 65pa=rhs.pa;return*this;}intmain(){Bbl(l),b2(bl),b3(3);bl.Display();b2.Display();b3.Display();b3=bl;bl.Display();b3.Display();return0;六、程序设计题(本大题共1小题,每小题10分,共10分)50.J知一个student类,包括学姓名,成绩和等级,不含任何成员函数.process为学生信息处理类.classstudent{charname[10];intdeg;charlevel[7];friendclassprocess:public:student(charna[],intd){strcpy(name,na);deg=d;}classprocess{public:voidtrans(studentsロ){…}〃根据学生成绩计算学生等级(优大于89分,良大于79分,中大于69分,及格大于59分,不及格小于60分).voiddisp(students口){...}〃根据成绩降序打印所有学生信息};要求实现process类中的两个函数:全国2012年1月高等教育自学考试C++程序设计试题课程代码:04737 66ー、单项选择题(本大题共20小题,每小题1分,共20分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。错选、多选或未选均无分。1.如声明对象数组,则下列描述正确的是(A.对每个元素均调用一次构造函数)B.部分元素调用构造函数,其它元素不需调用C.均不需要调用构造函数D.只是首元素调用构造函数2.不同对象调用同一成员函数时,this指针指向()A.不同对象C,无对象B.相同对象D.不确定3.设存在函数intmax(int,int)返回两参数中较大值,若求22,59,70三者中最大值,下列表达式正确的是()A.intm=max(22,max(59,70));B.intm=max(max(22,59),max(59,70));C.intm=max(max(22,70),59);D.以上皆正确4.ー个类可拥有多少个构造函数()A.0个C.1或多个5.在编译指令中,嵌入指令是指()A.#includeC.#ifB.1个D.以上皆对B.#defineD.#else6.设存在数组a,其长度为Len,下列哪项操作是将a中元素复制到数组b中()A.reverse(a+a,Len,b);C.find(a,a+Len,b);7。下列哪个要素不是面向对象的关键要素(A.模块化C.封装性8.下列对于类的描述错误的是()A.类要先声明后使用B.类是具有唯一标识的实体C.两个类可以使用同一个名称B.sort(a»a+Len,b);D.copy(a,a+Len,b);)B.抽象性D.继承性D.组成类的不仅有数据,还可以有对数据进行操作的函数9.使用引用调用方式将实参传给形参,下列说法正确的是()A.形参是实参的备份C.形参和实参共享同一对象10.关于对象的性质,下列描述错误的是(A.同・类对象之间可相互赋值B.不能使用对象数组C.对象可以用作函数参数D.ー个对象可以用作另ー个类的成员11.类的私有成员可在哪里被赋值()B.实参是形参的备份D.形参和实参无联系)A.类体中C.A和BB.该类的成员函数中D.以上都不是12.设存在数组a,其长度为Len,则下列哪个泛型算法用于反转a中各元素()A.reverse(a,a+Len);B.sort(a,a+Len); 67C.find(a,a+Len,value);D.copy(a,a+Len.b);13.用于标识ハ进制常量的前缀或后缀是()A.无B.后缀L或1C.前缀零D.前缀Ox14.派生类中继承的基类成员初始化如何进行()A.山派生类构造函数调用基类的构造函数进行B.由派生类构造函数进行C.由基类构造函数进行,无需派生类构造函数调用D.以上皆不正确15.对于多重继承,下列描述正确的是()A.所有基类使用相同的派生方式B.每个基类可使用不同派生方式C.只能是public派生D.只能是protected派生16.下列关于类的权限描述错误的是()A.类本身的成员函数可以访问自身的任何成员B.类的对象可以访问该类的所有成员C.普通函数不能直接访问类的公有成员,必须通过成员函数对其访问D.ー个类可以将另ー个类的对象作为成员17.运算符delete与哪个函数一起运行()A.构造函数B.析构函数C.主函数D.不与任何函数一起工作18.ー个类可以获得另ー个类的特性的机制称为()A.抽象B.封装C.继承D.多态性19.使用下列哪个格式控制符可设置转换十六进制为十进制()A.decB.octC.hexD.endl20.对引用调用描述正确的是()A.分配新存储空间B.修改已存储空间的名称为引用名C.引用名与已存在存储空间无任何关联D.将引用名标识符与一块己存在储区域相关联,没有分配新存储空间二、填空题(本大题共20小题,每小题1分,共20分)请在每小题的空格中填上正确答案,错填、不填均无分。21.公共派生中,基类的公有成员在派生类中是〇22.若要使用标准输入流机制从键盘输入ー个整数赋给整型变量a,相应的C++语句是23.UML中对象行为之间的动态关系是通过对象行为之间的依赖关系表现的,称之为。24.C++函数中按引用调用传递参数时使用作为参数。25.在C++中除具有语句和switch语句的函数外,其它函数都可以说明为内联函数。26.C++中规定模板以关键字和一个形参表示开头。27.构造函数不能被继承,ー个派生类只能调用它的基类的构造函数。28.vector类中用于获取存放的元素个数的方法是029.C++中istream类的直接基类是〇30.要关闭一个文件输出流对象myFile,所用的C++语句是.31.执行下列代码doublepi=3.141592 68cout«setprecision(2)«pi:程序的输出结果是。13.在私有派生中,基类的权限为private的成员,在派生类中。14.C++总共有3种文件流,分别是输入文件流、输出文件流和。15.C++使用流进行输入输出,其中能捕获键盘输入的对象是。16.在vector类中删除向量中最后ー个对象的方法是。17.函数重载可使ー个函数名具有多种功能,称这种特性为。18.C++语言对C语言做了很多改进,C++语言相对于C语言的最根本的变化是引进了概念。19.指令定义ー个标识符及串,在源程序中每次遇到该标识符时,编译器均用定义的串代替之。20.在C++标准输出方式中,要设置输出数据字段宽度width所使用的操控符是〇21.设有定义intX;floaty;,则10+x+y值的数据类型是=三、改错题(本大题共5小题,每小题2分,共10分)下面的类定义中有一处错误,请用下横线标出错误所在行并给出修改意见。22.#include 69public:voidinit(inta){x=a;}intgetx(){returnx;}voidsetx(inta){x=a;}};main(){pointa;a.init(20,30);cout«a.getx()«endl;)四、完成程序题(本大题共5小题,每小题4分,共20分)46.在下面程序的下划线处填上正确的语句,使其得到下面的输出结果。x=2»y=3#include 70Tn;public:Sample(){}Sample(Ti){}Sample 71cout«a(i,1)«"cout«endl;}46.在下划线处填上适当的句子,完成函数的定义。#include 72';fbr(i=O,j=strlen(a)-l;i<;i-H-,j)t=a[i]:a[j]=t;)cout«a«endl;}五、程序分析题(本大题共4小题,每小题5分,共20分)48.(给出下面程序的输出结果#include 73public:example(intb){a=b-H-;}voidprint(){a=a+l;cout«a«H";}voidprint()const{cout«a«,H,;));voidmain(){examplex(3);constexampley(2);x.print();y-print();)46.给出下面程序的输出结果#include 74intn;staticintsum;public:Sample(intx){n=x;}voidadd(){sum+=n;}voiddisp()fcout«nn=,,«n«,*,sum:n«sum«endl;});intSample::sum=0;voidmain()(Samplea(2),b(3),c(5);a.add();a.disp();b.add();b.disp();c.add();c.disp();)46.给出下面程序的输出结果#include 75A*opcrator->(){returnpa;}voidDisplay(){cout«Mdata=M«pa->data«",use=M«pa->use«endl;}};B&B::operator=(B&rhs){ififthis==&rhs)retum*this;一一pa->use==0)deletepa;++rhs->use;pa=rhs.pa;return*this;}intmain(){Bbl(l),b2(bl),b3(3);bl.Display();b2.Display();b3.Display();b3=bl;bl.Display();b3.Display();return0;六、程序设计题(本大题共1小题,每小题10分,共10分)46.已知一个student类,包括学姓名,成绩和等级,不含任何成员函数.process为学生信息处理类.classstudent{charname[10];intdeg;charlevel[7];friendclassprocess:public:student(charna[],intd){strcpy(name,na);deg=d:}):classprocess{public:voidtrans(studentsロ){…}〃根据学生成绩计算学生等级(优大于89分,良大于79分,中大于69分,及格大于59分,不及格小于60分).voiddisp(students口){…}〃根据成绩降序打印所有学生信息要求实现process类中的两个函数: 76全国2012年1月高等教育自学考试C++程序设计试题课程代码:04737ー、单项选择题(本大题共20小题,每小题1分,共20分)在毎小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。错选、多选或未选均无分。1.如声明对象数组,则下列描述正确的是()A.对每个元素均调用一次构造函数B.部分元素调用构造函数,其它元素不需调用C.均不需要调用构造函数D.只是首元素调用构造函数2.不同对象调用同一成员函数时,this指针指向()A.不同对象B.相同对象C.无对象D.不确定3.设存在函数intmax(int,int)返回两参数中较大值,若求22,59,70三者中最大值,下列表达式正确的是()A.intm=max(22,max(59,70));B.intm=max(max(22,59),max(59,70));C.intm=max(max(22,70),59);D.以上皆正确4.一个类可拥有多少个构造函数()A.0个B.1个C.1或多个D.以上皆对5.在编译指令中,嵌入指令是指()A.#includeB.#defineC.#ifD.#else6.设存在数组a,其长度为Len,下列哪项操作是将a中元素复制到数组b中()A.reverse(a+a,Len,b);B.sort(a,a+Len,b);C.find(a,a+Len,b);D.copy(a,a+Len,b);7。下列哪个要素不是面向对象的关键要素()A.模块化B.抽象性C.封装性D.继承性8.下列对于类的描述错误的是()A.类要先声明后使用B.类是具有唯一标识的实体C.两个类可以使用同一个名称D.组成类的不仅有数据,还可以有对数据进行操作的函数9.使用引用调用方式将实参传给形参,下列说法正确的是()A.形参是实参的备份B.实参是形参的备份C.形参和实参共享同一"对象D.形参和实参无联系10.关于对象的性质,下列描述错误的是()A.同一类对象之间可相互赋值 77B.不能使用对象数组C.对象可以用作函数参数D.ー个对象可以用作另ー个类的成员8.类的私有成员可在哪里被赋值()A.类体中B.该类的成员函数中C.A和BD.以上都不是9.设存在数组a,其长度为Len,则下列哪个泛型算法用于反转a中各元素()A.reverse(a,a+Len);B.sort(a»a+Len);C.find(a,a+Len.value);D.copy(a,a+Len.b);10.用于标识ハ进制常量的前缀或后缀是()A.无B.后缀L或1C.前缀零D.前缀Ox11.派生类中继承的基类成员初始化如何进行()A.由派生类构造函数调用基类的构造函数进行B.由派生类构造函数进行C.山基类构造函数进行,无需派生类构造函数调用D.以上皆不正确12.对于多重继承.下列描述正确的是()A.所有基类使用相同的派生方式B.每个基类可使用不同派生方式C.只能是public派生D.只能是protected派生13.下列关于类的权限描述错误的是()A.类本身的成员函数可以访问自身的任何成员B.类的对象可以访问该类的所有成员C.普通函数不能直接访问类的公有成员.必须通过成员函数对其访问D.ー个类可以将另ー个类的对象作为成员14.运算符delete与哪个函数一起运行()A.构造函数B.析构函数C.主函数D.不与任何函数一起工作はー个类可以获得另ー个类的特性的机制称为()A.抽象B.封装C.继承D.多态性19.使用下列哪个格式控制符可设置转换十六进制为十进制()A.decB.octC.hexD.endl20.对引用调用描述正确的是()A.分配新存储空间B.修改已存储空间的名称为引用名C.引用名与已存在存储空间无任何关联D.将引用名标识符与一块己存在储区域相关联.没有分配新存储空间二、填空题(本大题共20小题.每小题1分,共20分)请在毎小题的空格中填上正确答案,错填、不填均无分。21.公共派生中.基类的公有成员在派生类中是〇22.若要使用标准输入流机制从键盘输入ー个整数赋给整型变量a.相应的C++语句是23.UML中对象行为之间的动态关系是通过对象行为之间的依赖关系表现的.称之为0 7819.C++函数中按引用调用传递参数时使用作为参数。20.在C++中除具有语句和switch语句的函数外.其它函数都可以说明为内联函数。21.C++中规定模板以关键字和一个形参表示开头。22.构造函数不能被继承,ー个派生类只能调用它的基类的构造函数。23.vector类中用于获取存放的元素个数的方法是〇24.C++中istream类的直接基类是〇25.要关闭ー个文件输出流对象myFile,所用的C卄语句是〇26.执行下列代码doublepi=3.141592cout«setprecision(2)«pi;程序的输出结果是〇27.在私有派生中,基类的权限为private的成员,在派生类中〇33cH总共有3种文件流,分别是输入文件流、输出文件流和〇34.C++使用流进行输入输出,其中能捕获键盘输入的对象是〇35.在vector类中删除向量中最后ー个对象的方法是〇36.函数重载可使ー个函数名具有多种功能,称这种特性为037.C++语言对C语言做了很多改进,C++语言相对于C语言的最根本的变化是引进了概念。38.指令定义ー个标识符及串,在源程序中每次遇到该标识符时,编译器均用定义的串代替之。39.在C++标准输出方式中,要设置输出数据字段宽度width所使用的操控符是〇40.设有定义intx;floaty;»则10+x+y值的数据类型是。三、改错题(本大题共5小题,每小题2分,共10分)下面的类定义中有一处错误,请用下横线标出错误所在行并给出修改意见。41.#include 7944.template 80template 81fbr(i=O;i<10;i++)cout«a(i,1)«H";cout«endl;}46.在下划线处填上适当的句子,完成函数的定义。#include 82';fbr(i=O,j=strlen(a)-l;i<;i++,j){t=a[i];aB]=t;)cout«a«endl;)五、程序分析题(本大题共4小题,每小题5分,共20分)48.(给出下面程序的输出结果#include 83classexample{inta:public:example(intb){a=b++;}voidprint(){a=a+l;cout«a«MM;}voidprint()const{cout«a«,H,;)};voidmain(){examplex(3);constexampley(2);x.print();y.print();46.给出下面程序的输出结果#include 84{intn:staticintsum:public:Sample(intx){n=x:}voidadd(){sum+=n:}voiddisp()(cout«"n="«n«",sum:"«sum«endl;)};intSample::sum=0;voidmain(){Samplea(2),b(3),c(5);a.add();a.disp();b.add();b.disp():c.add();c.disp();}46.给出下面程序的输出结果#include 85A*operator->(){returnpa;}voidDisplay(){cout«Mdata=,,«pa->data«n,use=,,«pa->use«endl;B&B::operator=(B&rhs)(ifi(this==&rhs)retum*this;if(ーーpa->use==0)deletepa;++rhs->use;pa=rhs.pa;return*this;}intmain(){Bbl(l),b2(bl),b3(3);bl.Display();b2.Display();b3.Display();b3=bl;bl.Display();b3.Display();return0;六、程序设计题(本大题共1小题,每小题!0分,共10分)46.一知一个student类,包括学姓名,成绩和等级,不含任何成员函数.process为学生信息处理类.classstudent{charname[10];intdeg;charlevel[7];friendclassprocess:public:student(charna[]»intd){strcpy(name,na);deg=d;}classprocess{public:voidtrans(students口){…}〃根据学生成绩计算学生等级(优大于89分,良大于フ9分,中大于69分,及格大于59分,不及格小于60分). 86voiddisp(students[]){.・.}//根据成绩降序打印所有学生信息卜要求实现process类中的两个函数:全国2012年10月高等教育自学考试C++程序设计试题课程代码:04737请考生按规定用笔将所有试题的答案涂、写在答题纸上。选择题部分注意事项:1.答题前,考生务必将自己的考试课程名称、姓名、准考证号用黑色字迹的签字笔或钢笔填写在答题纸规定的位置上。2.每小题选出答案后,用2B铅笔把答题纸上对应题目的答案标号涂黑。如需改动,用橡皮擦干净后,再选涂其他答案标号。不能答在试题卷上。ー、单项选择题(本大题共20小题,每小题1分,共20分)在毎小题列出的四个备选项中只有一个是符合题目要求的,请将其选出并将“答题纸”的相应代码涂黑。错涂、多涂或未涂均无分。1.使用下列哪ー限定符可强制改变访问方式A.constB.shortC.longD.signed2.下列表达式,哪ー是声明P为指向常量的指针A.constint*pB.int*constp;C.constint*constpD.int*p3.运算符::叫做A.下标运算符B.自增运算符C.成员访问运算符D.作用域运算符4.如果为ー个类定义了自己的构造函数,下列描述正确的是A.系统不再提供默认构造函数,但提供其他构造函数B.系统提供其他非默认构造函数C.系统不再提供默认构造函数D.系统仍提供默认构造函数5.对于类中的成员,使用protected修饰,表明该成员的访问权限是A.公有的B.私有的C.保护的D.不可见的6.类不是内存中的物理实体,只有当使用类产生对象时,オ进行内存分配,这种对象建立的过程称为A.程序化B.结构化C.过程化D.实例化7.下列关于类的权限描述错误的是A.类本身的成员函数可以访问自己定义的任何成员8.类的对象只能访问公有成员C.普通函数只能通过对象访问类的公有成员D.ー个类不能包含另ー个类的对象作为成员 871.在派生中,访问控制方式没有下列哪种A.publishB.publicC.protectedD.private9.采用重载函数的目的是A.实现共享B.减少空间C.提高速度D.使用方便,提高可读性10.设类A中包含若干其他类的对象作为成员,则在定义类A的构造函数时,应使用下列哪个符号将A::A(参数表)与成员初始化列表隔开B.;A.,C.:D..11.设存在数组a,其长度为Len,则下列哪个泛型算法用于对a进行升塞排序A.reverse(a,a+Len);B.sort(a,a+Len);C.find(a,a+Len,value);D.copy(a,a+Len,b);12.函数intsum(inta=10,intb=15,intc=25);不可与下列哪个函数同时声明A.intsum(int,int,int,int)B.intsum(int,int,int)C.intsum(double)D.intsum(double,double,double);13.对函数intsaveName(char*first,char*sec="",char*thd="")下列调用方法不正确的是A.ints=saveName("l","2","3");B.ints=saveName("l","2");C.ints=saveName("l");D.ints=saveName("l",,"3");14.下列哪个不是函数重载需要满足的条件A.返回值类型不同B.参数个数不同C.参数个数相同时,参数类型不同D.函数名相同15.关于对象性质,下列描述错误的是A.同一类对象之间不可相互赋值B.可以使用对象数组C.对象可以用作函数参数D.一个对象可以用作另一个类的成员16.可用作C++语言用户标识符的ー组标识符是A.void,define,+WORDB.a3_b3,_123,YNC.fbr,-abc,CaseD.2a,DO,sizeof17.设函数int&index(inta.inti)返回数组a中下标为i的元素,如果在整型数组intarray[]={1,2,3},在执行index(array,1)+=3后,array中各元素值为A.{4,2,3}B.{1,5,3)C.{1,2,6}D.{4,5,6}18.对指针动态分配空间用的关键字是A.defineB.intC.newD.float19.ー个函数功能不太复杂,但要求被频繁调用,应选用B.重载函数A.内联函数C.递归函数D•嵌套函数20.在inta=3,*p=&a;中,*p的值是A.变量a的地址值B.无意义C.变量p的地址值D.3非选择题部分 88注意事项:用黑色字迹的签字笔或钢笔将答案写在答题纸上,不能答在试题卷上。二、填空题(本大题共20小题,每小题1分,共20分)19.默认参数是在中说明的,默认参数可以多于1个,但是必须放在参数序列的后部。20.类所声明的内容用括起来,之间的内容称为类体。21.执行代码doublepi=3.141592;cout«pi;程序的输出结果是〇22.在文件输入流类中,用于判断提取操作是否已达到文件尾的方法是。23.常量成员包括常量数据成员,静态常数成员,和。24.通过C++语言中的机制,可以从现存类中构建其子类。25.如果ー个函数直接或间接地调用自身,这样的调用称为调用。26.使用C++编译器对C++源程序进行编译产生文件的扩展名是。27.C++的类成员由数据成员和组成。28.C++面向对象程序设计的特点为:抽象,封装,继承和。29.C++标准库string类中用于在主串中检索所需字符串的成员函数是。30.C++中函数参数有两种传递方式:传值和。31.在删除ー个动态对象时,将自动调用该动态对象所属类的函数。32.在C++当中,类外的函数只能通过类的对象使用该类的。33.简单成员函数是指声明中不含const,volatile,关键字的函数。34.执行cout«char('a'+2)«endl:后的显示结果为〇35.假定类A有一个公有属性的静态数据成员b,在类外不通过对象名访问b的写法是36.拷贝构造函数使用作为参数初始化创建中的对象。37.一旦基类定义了虚函数,该基类的派生类中的也自动成为虚函数。38.在C++类中,有一种类不能生成对象只能被继承,称之为。三、改错题(本大题共5小题,每小题4分,共20分)下面的类定义中有一处错误,请写出错误所在行并给出修改意见。39.#include 89public:voidshow。(cout«HclassBshowM«endl;}};classC:publicA,publicB{public:voidprint。{cout«"classCprintM«endl;}};voidmain(){Cc;c.show。;c.print();}44.#include 90voidmain(){cout«func(8,5)«n:M«func(5.0,10.0)«endl;intd;cin»d:}45.在下面程序横线处填上适当内容,使程序执行结果为:x=0,y=0x=l,y=2x=10,y=20程序如卜:#include 91程序如下:#include 92voidprint(Aa){a.printMe();|voidmain()(Bb;Cc;print(b);print(c);52.写出此程序的执行结果:#include 93A.externC.free2.C++中定义标准输入输出的库为A.stdioC.iostream3.My是一个类,则执行语句Mya[3],A.2C.44.下列语句错误的是A.intval(20);C.constintval;5.下列说法中,有关构造函数是正确的是A.任何ー类必定有构造函数C.构造函数不能重载6.下面关于类和对象说法不正确是A.类由数据与函数组成C.对象是类的实例7.下面选项中不是类成员函数的是A.构造函数B.goto0.defaultB.mathD.stdlib*p[2]之后,自动调用构造函数次数为B.3D.5B.externintval(20);□.externconstintval;B.可定义没有构造函数的类D.任何ー类必定有缺省的构造函数B.ー个对象必属于某个类D.ー个类的对象只有一个B.析构函数 94C.友元函数8.在C++中类之间的继承关系具有A.自反性C.传递性9.C++中类的成员默认为D.静态函数B.对称性D.反对称性A.publicC.protectedB.private0.static10.C++中要实现动态联编,调用虚函数时必须使用A.基类指针C.派生类指针11.下面对析构函数的正确描述是A.系统不能提供默认的析构函数C.析构函数没有参数12.在下面的二维数定义正确的是A.intary[5]口;C.intary[][5];13.以下说法中正确的是B.类名D.对象名B.析构函数必须由用户定义D.析构函数可以设置默认参数B.intary[][5]={{0,1,2}};D.intary[5,5];A.C++程序总是从第一个定义的函数开始执行B.C++程序总是从main函数开始执行C.C++中函数必须有返回值D.C++中函数名必须唯一14.对C++中主函数描述正确的是A.名称为main,可为多个C.名称为main,必须有且只能有一个15.下面声明纯虚函数语句正确的是A.voidfun()=0;C.virtualvoidfun();B.名称不限,可为多个D.名称不限,必须有且只能有一个B.virtualvoidfun()=0;D.virtualvoidfun(){};16.对于拷贝初始化构造函数和赋值操作的关系,正确的描述是A.拷贝初始化构造函数和赋值操作是完全ー样的操作B.进行赋值操作时,会调用类的构造函数C.当调用拷贝初始化构造函数时,类的对象正在被建立并被初始化D.拷贝初始化构造函数和赋值操作不能在同一个类中被同时定义17.使用重载函数的目的是A.共享函数数据C.优化运行效率B.减少代码量□.提高可读性18.C++语言对C语言做了很多改进,C++语言相对于C语言的最根本的变化是A.增加了一些新的运算符B.允许函数重载,并允许设置缺省参数C.规定函数说明符必须用原型D.引进了类和对象的概念19.假定有“char*p="Hello";",若要输出这个字符串的地址值正确的写法为A.cout«*p;C.cout«&p;B.cout«p;D.cout«(void*)p;20.对类成员访问权限的控制,是通过设置成员的访问控制属性实现的,下列不是访问控制属性的是A.公有类型C.保护类型B.私有类型D.友元类型 95非选择题部分注意事项:用黑色字迹的签字笔或钢笔将答案写在答题纸上,不能答在试题卷上。二、填空题(本大题共20小题,每小题1分,共20分)21.C++程序的编译是以为单位进行的。22.C++语言支持的两种多态性分别是编译时的多态性和的多态性。23.重载的运算符保持其原有的操作符个数、和结合性不变。24.在C++中,函数的参数有两种传递方式,它们分别是值传递和〇25.含有的类称为抽象类。26.C++程序运行时的内存空间可以分成全局数据区,堆区,栈区和»27.对于无返回值函数,定义函数时要用修饰函数类型。28.定义重载函数必须在参数的个数或参数的上与其它同名函数不同。29.拷贝构造函数是在用一个对象初始化另一个对象时被调用,系统缺省的拷贝构造函数的工作方法是30.以面向对象方法构造的系统,其基本单位是。31.拷贝构造函数使用作为参数初始化创建中的对象。32.当一个成员函数被调用时,该成员函数的指向调用它的对象。33.类可将实现细节隐藏起来,这种机制称为。34.在面向对象的程序设计中,通过封装实现数据隐藏;通过实现代码的复用。35,在公有继承的中基类数据成员在派生类中的访问权限。36.复杂对象可以由简单对象构成,这种现象称为。37.如有“char*p="Heno";”,则语句“cout«*(p+l);”输出值是。38.基类和派生类的关系称为。39,在类的定义中,说明为protected的数据成员称为保护成员。保护数据成员具有双重作用:对于其派生类而言,是公有的;而对于其外部的程序而言,是。40.假定x=10,则表达式x<=10?20:30的值为。三、改错题(本大题共5小题,毎小题2分,共10分)下面的类定义中有一处错误,请写出错误所在行并给出修改意见41.#include 96*p=99cout«*p«endl;}40.#include 97{cout«p.a«,,,,,«p.b«endl;voidmain(){baseb(78,87);b.show(b);40.将下划线处缺少的部分写在“答题纸”上。源程序如下:#include 98{basea;a.initxy(67,90);print();}49.下面程序给出了一个从普通的基类派生出ー个模板类的方法,在下划线处填上正确的部分(答案写在“答题纸‘’上)。#include 99voidbase::Show(){cout«a«,,,,,«b«endl;}voidmain()(baseal(20),a2(60);al.Show();a2.Show();)五、程序分析题(本大题共4小题,每小题5分,共20分)49.给出下面程序的输出结果#include 100classbase(private:intx;public:voidsetx(inta){x=a;}intgetx(){returnx;}};voidmain()(basea,b;a.setx(89);b=a;cout«a.getx()«endl;cout«b.getx()«endl;}49.给出下面程序的输出结果#includc 101请写出test函数的过程(如果需要形式参数,请给出形参类型和数量,以及返冋值类型)全国2013年10月高等教育自学考试C++程序设计试题课程代码:04737请考生按规定用笔将所有试题的答案涂、写在答题纸上。选择题部分注意事项:1.答题前,考生务必将自己的考试课程名称、姓名、准考证号用黑色字迹的签字笔或钢笔填写在答题纸规定的位置上。2.每小题选出答案后,用2B铅笔把答题纸上对应题目的答案标号涂黑。如需改动,用橡皮擦干净后,再选涂其他答案标号。不能答在试题卷上。ー、单项选择题(本大题共20小题,毎小题1分,共20分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其选出并将“答题纸”的相应代码涂黑。错涂、多涂或未涂均无分。1.下列不属于C++关键字的是A.externC.free2.C++中定义标准输入的库为A.stdioC.istream3.My是ー个类,则执行语句Mya[3],A.2B.34.下列语句错误的是A.intval(20);C.constintval;5.下列说法中,有关构造函数是正确的是A.任何ー类必定有构造函数C,构造函数不能重:载6.下面关于类和对象说法不正确是A.类由数据与函数组成C.对象是类的实例7.下面选项中不是类成员函数的是A.构造函数B.goto□.defaultB.mathD.stdlib*[2];之后,自动调用构造函数次数为C.4D.5B.externintval(20);D.externconstintval;B.可定义没有构造函数的类D.任何ー类必定有缺省的构造函数B.ー个对象必属于某个类D.ー个类的对象只有一个B.析构函数第91页共91页 102C.友元函数8.在C++中类之间的继承关系具有A,自反性C.传递性9.C++中类的成员默认为D.静态函数B.对称性D.反对称性A.publicC.protectedB.privateD.static10.C++中要实现动态联编,调用虚函数时必须使用A.基类指针C.派生类指针11.下面对析构函数的正确描述是A.系统不能提供默认的析构函数C.析构函数没有参数12.在下面的二维数定义正确的是A.intary[5][];C.intary[][5];B.类名D.对象名B.析构函数必须由用户定义D.析构函数可以设置默认参数B.intary[][5]={{0,1,2}};D.intary[5,5];13.以下说法中正确的是A.C++程序总是从第一个定义的函数开始执行B.C++程序总是从main函数开始执行C.C++中函数必须有返回值D.C++中函数名必须唯一14.对C++中主函数描述正确的是A.名称为main,可为多个C.名称为main,必须有且只能有一个15.下面声明纯虚函数语句正确的是B.名称不限,可为多个D.名称不限,必须有且只能有一个A.voidfun()=0;B.virtualvoidfun()=0;C.virtualvoidfiin();D.virtualvoidfun(){};16.对于拷贝构造函数和赋值操作的关系,正确的描述是A.拷贝构造函数和赋值操作是完全ー样的操作B.进行赋值操作时,不会调用类的构造函数C.当调用拷贝构造函数时,类的对象正在被建立并被初始化D.拷贝构造函数和赋值操作不能在同一个类中被同时定义17.使用重载函数的目的是A,共享函数数据C.优化运行效率B.减少代码量D.提高可读性18.C++语言对C语言做了很多改进,C++语言相对于C语言的最根本的变化是 103A.增加了一些新的运算符B.允许函数重载,并允许设置缺省参数C.规定函数说明符必须用原型D.引进了类和对象的概念19.假定有“char*p="HeHo";”,若要输出这个字符串的地址值正确的写法为A.cout«*p;B.cout«p;C.cout«&p;D.cout«(void*)p;20.从本质上看,引用变量是被引用变量的A.拷贝B.别名C.复制D.克隆非选择题部分注意事项:用黑色字迹的签字笔或钢笔将答案写在答题纸匕不能答在试题卷上。二、填空题(本大题共20小题,每小题1分,共20分)21.C++程序的编译是以为单位进行的。22.C++语言支持的两种多态性分别是编译时的多态性和一的多态性。23.重載的运算符保持其原有的操作符个数、和结合性不变。24.在C++中,函数的参数有两种传递方式,它们分别是值传递和ー。25.含有的类称为抽象类。26.C++程序运行时的内存空间可以分成全局数据区,堆区,栈区和。27.对于无返回值函数,定义函数时要用修饰函数类型。28.定义重载函数必须在参数的个数或参数的上与其它同名函数不同。29.拷贝构造函数是在用一个对象初始化另一个对象时被调用,系统缺省的拷贝构造函数的工作方法是。30.以面向对象方法构造的系统,其基本单位是。31.C++中定义友元函数使用的关键字为。32.当一个成员函数被调用时,该成员函数的指向调用它的对象。33.类可将实现细节隐藏起来,这种机制称为。34,在面向对象的程序设计中,通过封装实现数据隐藏;通过实现代码的复用。35.在公有继承的中基类数据成员在派生类中的访问权限ー。36.复杂对象可以由简単对象构成,这种现象称为。37.如有“char・『"Hello";”,则语句“cout«*(p+l);”输出值是。38.基类和派生类的关系称为〇39.C++对其对象的数据成员和成员函数的访问是通过一来限制的。40.假定x=10,则表达式xv=10?20:30的值为〇 104三、改错题(本大题共5小题,每小题4分,共20分)下面的每题中有一处错误,请在“答题纸’’上将错误所在行写出并给出修改意见。35.#includc 105public:test(inta){x=a;}voidset(inta){x=a;}voidget(){cout«x«endl;}};classtestl:publictest{private:intx;public:testl(inta){x=a;}voidset(inta){x=a;}voidget(){cout«zr«endl;});35.#include 106baseb(78,87);b.show(b);)35.在答题纸上填上缺少的部分。源程序如下:#include 107voidmain()basea;a.initxy(67,90);print();}35.下面程序给出了一个从普通的基类派生出ー个模板类的方法,在答题纸上填上缺少的部分。#include 108{BaseA(458);A.showb();derived
此文档下载收益归作者所有