[计算机类试卷]国家二级(C++)机试模拟试卷81及答案与解析.doc
《[计算机类试卷]国家二级(C++)机试模拟试卷81及答案与解析.doc》由会员分享,可在线阅读,更多相关《[计算机类试卷]国家二级(C++)机试模拟试卷81及答案与解析.doc(30页珍藏版)》请在麦多课文档分享上搜索。
1、国家二级( C+)机试模拟试卷 81及答案与解析 一、选择题 1 有如下类定义: class Foo public: Foo(int v) : value(v) / Foo() / private: Foo() / int value = 0; / ; 其中存在语法错误的行是 ( )。 ( A) ( B) ( C) ( D) 2 某二叉树有 5个度为 2的结点,则该二叉树中的叶子结点数是 ( )。 ( A) 10 ( B) 8 ( C) 6 ( D) 4 3 对 C+编译器区分重载函数无任何意义的信息是 ( )。 ( A)参数类型 ( B)参数个数 ( C)返回值类型 ( D)常成员函数关键字
2、 const 4 有如下程序: #include using namespace std; class VAC public: int f() const return 3; int f() return 5; ; int main() VAC v1; const VAC v2; cout #include using namespace std; class Animal public: virtual string GetType() const return “Animal“; virtual string GetVoice() const return “Voice“; ; class
3、 Dog:public Animal public: string GetType() const return “Dog“; string GetVoice() const return “Woof“; ; class Cat:public Animal public: string GetType() const return “Cat“; string GetVoice() const return “Miaow“; ; void Type(Animal a) cout T square(T x) return x * x; 其中的参数 T是 ( A)函数形参 ( B)函数实参 ( C)
4、模板实参 ( D)模板形参 14 有如下程序段: int i=2;int j=3; int main() i=j=9; cout using namespace std; class MyClass public: MyClass() coutTfun(Tx)returnx; ( B) templateTfun(Tx,intn)returnx*n; ( C) templateTfun(T*p)return*p; ( D) templateTclassATn; 24 已知数组 arr 的定义如下: int arr5 = 1,2,3,4,5; 下列语句中输出结果不是 3的是 ( A) cout T
5、 square(T x) return x * x; 其中的 T是 ( A)函数形参 ( B)函数实参 ( C)模板形参 ( D)模板实参 29 若 x和 y是程序中的两个整型变量,则下列 if语句中合法的是 ( A) if(x)y=1;elsey=2; ( B) if(0)y=1elsey=2; ( C) if(x!=0)theny=1elsey=2; ( D) ifx!=0y=1;elsey=2; 30 在定义一个类模板时,模板形参表是用一对括号括起来的,所采用的括号是 ( A)圆括号 ( B)中括号 ( C)尖括号 ( D)花括号 31 下列选项中,正确的 C+标识符是 ( A) a3
6、( B) a-3 ( C) a3 ( D) a_3 32 下列有关类继承的表述中,错误的是 ( A)派生类可以继承多个基类 ( B)派生类构造函数要负责调用基类的构造函数 ( C)虚基类可以解决由多继承产生的二义性问题 ( D)虚基类可以解决由多继承产生的二义性问题 33 下列叙述中正确的是 ( )。 ( A)顺序存储结构的存储一定是连续的,链式存储结构的存储空间不一定是连续的 ( B)顺序存储结构只针对线性结构,链式存储结构只针对非线性结构 ( C)顺序存储结构能存储有序表,链式存储结构不能存储有序表 ( D)链式存储结构比顺序存储结构节省存储空间 34 关于运算符重载,下列表述中正确的是
7、( )。 ( A) C+已有的任何运算符都可以重载 ( B)运算符函数的返回类型不能声明为基本数据类型 ( C)在类型转换符函数的定义中不需要声明返回类型 ( D)可以通过运算符重载来创建 C+中原来没有的运算符 35 下列关于 C+预定义流对象的叙述中,正确的是 ( )。 ( A) cin是 C+预定义的标准输入流对象 ( B) cin是 C+预定义的标准输入流类 ( C) cout是 C+预定义的标准输入流对象 ( D) cout是 C+预定义的标准输入流类 36 下列关于赋值运算符 =重载的叙述中,正确的是 ( A)赋值运算符只能作为类的成员函数重载 ( B)默认的赋值运算符实现了 “深
8、层复制 “功能 ( C)重载的赋值运算符函数有两个本类对象作为形参 ( D)如果已经定义了复制(拷贝)构造函数,就不能重载赋值运算符 37 有如下程序: #include using namespace std; class Point public: Point(int xx=0,int yy=0):x(xx),y(yy) void SetX(int xx) x=xx; void SetY(int yy) y=yy; private: int x,y; ; class Circle:public Point public: Circle(int r):radius(r) int GetRad
9、ius() return radius; private: void SetRadius(int r) radius=r; int radius; ; int main() Circle c1(5); c1.SetX(1); / c1.SetY(2); / c1.SetRadius(10); / cout using namesapce std; int return r; int main() int a=1,3,5,7; cout usingnamespacestd; classMyClass public: MyClass(intlen) array=newintlen; arraySi
10、ze=len; for(inti=0; i #include usingnamespacestd; classBasel public: *found*下列语句需要声明纯虚函数 Show _; ; classBase2 protected: char*p; Base2(constchar*s) _p=newcharstrlen(s)+1; *found*下列语句将形参指向的字符串常量复制到该类的字符数组中 _; Base2()delete_P; ; *found*Derived类 公有继承 Basel,私有继承 Base2类 classDerived: _ public: *found*以下构
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
本资源只提供5页预览,全部文档请下载后查看!喜欢就下载吧,查找使用更方便
2000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 试卷 国家 二级 模拟 81 答案 解析 DOC
