C++面向对象程序设计模拟试题2.docx
- 文档编号:26821644
- 上传时间:2023-06-23
- 格式:DOCX
- 页数:17
- 大小:19KB
C++面向对象程序设计模拟试题2.docx
《C++面向对象程序设计模拟试题2.docx》由会员分享,可在线阅读,更多相关《C++面向对象程序设计模拟试题2.docx(17页珍藏版)》请在冰豆网上搜索。
C++面向对象程序设计模拟试题2
C++面向对象程序设计模拟试题二
一、单项选择题(本大题共10小题,每小题2分,共20分)在每小题列出的四个备选项中,只有一个是符合题目要求的,请将其代码填写在题后的括号内。
错选、多选或未选均无分。
1.说明内联函数的关键字是(A)。
A)inlineB)virtualC)defineD)static
2.假定CAb为一个类,则执行CAboX;语句时将自动调用该类的(B)
A)有参构造函数B)无参构造函数
C)拷贝构造函数D)赋值重载函数
3.cin是某个类的标准对象的引用,该类是(B)。
A)ostreamB)istreamC)stdoutD)stdin
4.下面的哪个保留字不能作为函数的返回类型?
(C)
A)voidB)intC)templateD)long
5.派生类的成员函数不能访问基类的(C)。
A)保护成员B)公有成员
C)私有成员D)前面各选项都正确
6.在语句“cout< C A)C++的关键字B)类名 C)对象名D)函数名 7.编译时多态性使用什么获得? (D) A)重载函数B)继承C)虚函数D)B和C 8.拷贝构造函数的参数通常是(C)。 A)无特殊要求B.指向对象的指针 C)本类对象的常引用D)对象 9.C++有几种联编? (B) A)1种B)2种C)3种D)4种 10.基类和派生类可以分别称为(B)。 A)“大类”和“小类”B)“父类”和“子类” C)“小类”和“大类”D)“子类”和“父类” 二、填空题(本大题共5小题,每小题2分,共10分)不写解答过程,将正确的答案写在每小题的空格内。 错填或不填均无分。 1.设函数max是由函数模板实现的,并且max(3.5,5)和max(3,5)都是正确的函数调用,则此函数模板具有 (2)个类型参数。 2.在C++中,函数重载与虚函数帮助实现了类的(多态)性。 3.由static修饰的数据成员为该类的所有对象(共享)。 4.重载函数一般在参数类型或参数个数上不同,但(函数名)相同。 5.使用new建立的动态对象在不用时应该用(delete)释放所占用的空间。 三、程序分析题(本大题共6小题,每小题5分,共30分)给出下面各程序的输出结果。 1.阅读下面程序,写出输出结果。 #include usingnamespacestd; classPoint { public: Point(inta=0,intb=0): x(a),y(b){} intGetX()const{returnx;} intGetY()const{returny;} voidSetX(inta){x=a;} voidSetY(inta){y=a;} private: intx; inty; }; intmain() { Pointu; constPointv(6,8); cout< u.SetX(16); cout< u.SetY(18); cout< cout< cout< return0; } 上面程序的输出结果为: 2.阅读下面程序,写出输出结果。 #include usingnamespacestd; template classTest { public: Test(Typea[],intiSize): elem(a){size=iSize;} voidPrint()const{for(inti=0;i private: Type*elem; intsize; }; intmain() { inta[]={1,0,8}; doubleb[]={1.6,1.8}; Test ar1.Print(); Test ar2.Print(); cout< return0; } 上面程序的输出结果为: 3.阅读下面程序,写出输出结果。 #include usingnamespacestd; classGoods { public: Goods(intw): weight(w){totalWeight=totalWeight+w;} Goods(constGoods&g) { weight=g.weight; totalWeight=totalWeight+weight; } ~Goods(){totalWeight=totalWeight-weight;} voidPrint()const; staticintGetTotalWeight(){returntotalWeight;} private: intweight; staticinttotalWeight; }; intGoods: : totalWeight=0; voidGoods: : Print()const { cout< } intmain() { Goodsg1(6); g1.Print(); Goodsg2(g1); g2.Print(); cout< : GetTotalWeight(); cout< return0; } 上面程序的输出结果为: 4.阅读下面程序,写出输出结果。 #include usingnamespacestd; template classTest { public: Test(Typea=0,Typeb=0,Typec=0): z(c){x=a;y=b;} voidPrint() { cout< cout< } voidPrint()const { cout< } private: Typex,y; constTypez; }; intmain() { Test t1.Print(); Test t2.Print(); constTest t3.Print(); return0; } 上面程序的输出结果为: 5.阅读下面程序,写出输出结果。 #include usingnamespacestd; template TypeMax(constType&a,constType&b) { if(a elsereturna; } template TypeMin(constType&a,constType&b) { if(a elsereturnb; } intmain() { doublex=5.38,y=6.09; cout< cout< return0; } 上面程序的输出结果为: 6.阅读下面程序,写出输出结果。 #include usingnamespacestd; classA { public: A(){cout<<"A"< ~A(){cout<<"~A"< }; classB: publicA { public: B(){cout<<"B"< ~B(){cout<<"~B"< }; intmain(void) { Bobj; return0; } 上面程序的输出结果为: 四、完成程序填题(本大题共4个小题,每小题3分,共12分)下面程序都留有空白,请将程序补充完整。 1.将如下程序补充完整。 #include usingnamespacestd; classA { private: intn; public: A(intn){this->n或A: : n=n;}//将数据成员n初始化为形参n voidShow()const{cout< }; intmain() { Ai=8; i.Show(); return0; } 2.将如下程序补充完整。 #include usingnamespacestd; classA { private: inta; public: A(intm): a(m){}
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C+ 面向 对象 程序设计 模拟 试题