【计算机类职业资格】二级C++分类模拟264及答案解析.doc
《【计算机类职业资格】二级C++分类模拟264及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】二级C++分类模拟264及答案解析.doc(17页珍藏版)》请在麦多课文档分享上搜索。
1、二级 C+分类模拟 264及答案解析(总分:65.00,做题时间:90 分钟)一、选择题(总题数:35,分数:65.00)1.要定义一个引用变量 p,使之引用类 MyClass的一个对象,正确的定义语句是_。(分数:2.50)A.MyClass p=MyClass;B.MyClass p=new MyClass;C.MyClassp=new MyClass;D.MyClass a,p=a;2.将:x+y*z 中的“+”用成员函数重载,“*”用友元函数重载应写为 _ 。(分数:2.00)A.operator+(operator*(y, z)B.operator+(operator*(y, z)C
2、.operator+(x*(y, z)D.x+(operator*(y, z)3.有如下程序: #includeiostream using namespace std; class Basel public: Basel(int d) coutd; Base1() ; class Base2 public: Base2(int d) coutd; Base2() ; class Derived:public Base1,Base2 public: Derived(int a,int b,int c,int d); Base1(b),Base2(a),b1(d),b2(c) Private:
3、int b1; int b2; ; int main() Derived d(1,2,3,4); return 0; 运行时的输出结果是_。(分数:2.00)A.1234B.2134C.12D.214.假定其中的 x的单位是角度且不考虑丌的值的精度,则与数学公式 (分数:2.50)A.sqrt(cos(x)B.sqrt(abs(cos(x*3.14/180)C.sqrt(abs(cos(x*(/180)D.sqrt(fabs(cos(x*3.14/180)5.通过派生类的对象可直接访问的是_。(分数:1.00)A.公有继承基类中的公有成员B.私有继承基类中的公有成员C.公有继承基类中的保护成员
4、D.私有继承基类中的保护成员6.下列关于构造函数的描述中,错误的是_。(分数:1.00)A.构造函数名与类名相同B.构造函数可以有返回值C.构造函数可以重载D.每个类都有构造函数7.有如下程序: #include iostream using namespace std; class CD public: CD() cout“C“; private: char name80; ; int main() CD a,*b,d2;return 0; 运行时的输出结果是(分数:2.00)A.CCCCB.CCCC.CCDC8.下列符号中能够作为 C+标识符的是_。(分数:1.00)A.constB.2a
5、C._shapeD.-count9.若 PAT是一个类,则程序运行时,语句“pAT(*ad)3;”调用 PAT的构造函数的次数是_。(分数:2.50)A.0B.1C.2D.310.有如下类声明: class SAMPLE int n; public: SAMPLE(int i=0):n(i) void setValue(int n0); ; 下列关于 getValue成员函数的定义中,正确的是_。(分数:1.00)A.SAMPLE: setValue(int n0) n=n0; B.void SAMPLE: setValue(int n0) n=n0;C.void setValue(int n
6、0) n=n0;D.setValue(int n0) n=n0;11.有如下程序: # includeiostream usmg namespace std; class A public: A(int i): r1(i) void print()(cout“E“r1“-“; void print()constcout“C“r1*r1“一“; private: int r1; ; int main() A a1(2); const A a2(4); a1.print(); a2.print(); return 0; 运行时的输出结果是_。(分数:2.50)A.运行时出错B.E2-Cl6-C.C
7、4-C16-D.E2-E4-12.有如下程序: #includeiostream #includeiomanip using namespace std;_ int main() coutsetw(10)serfill(“x“)setprecision(8)left; cout12.3456793_98765; return 0; 若程序的输出是 12.345679x98765xxxxx,则划线处缺失的部分是_。(分数:2.50)A.setw(10)B.setfill(“x“)C.setprecision(8)D.right13.计算斐波那契数列第 n项的函数定义如下: int fib(int
8、 n) if(n= =0) return 1; else if(n= =1) return 2; else return fib(n-1)+fib(n-2); 若执行函数调用表达式 fib(2),函数 fib被调用的次数是(分数:2.00)A.1B.2C.3D.414.C+中的模板包括_。(分数:2.50)A.对象模板和函数模板B.对象模板和类模板C.函数模板和类模板D.变量模板和对象模板15.若有定义语句“int i=2,j=3;”,则表达式 i/j的结果是_。(分数:2.00)A.0B.0.7C.0.666 67D.0.666 666 6716.若一个函数的原型为“int * Xfun1(
9、int x.int”,则该函数的返回值类型为_。(分数:2.50)A.int*B.intC.int public: A():a(0) A(char *aa) /把 aa所指字符串复制到 a所指向的存储空间 a=_; strcpy(a, aa); strcpy(a, aa); A()deletea; ; 横线处应填写的表达式是_。(分数:2.50)A.new charstrlen(aa)+1B.charstrlen(aa)+1C.charstrlen(aa)D.new charsizeof(aa)-119.软件详细设计产生的图如下: (分数:2.50)A.N-S图B.PAD图C.程序流程图D.E
10、-R图20.下列关于运算符重载的描述中,错误的是_。(分数:1.00)A.可以通过运算符重载在 C+中创建新的运算符B.赋值运算符只能重载为成员函数C.运算符函数重载为类的成员函数时,第一操作参数就是该类对象D.重载类型转换运算符时不需要声明返回类型21.同一概念在一处为实体而在另一处为属性或联系的冲突在视图集成中称为_。(分数:2.50)A.命名冲突B.概念冲突C.域冲突D.约束冲突22.打开文件时可单独或组合使用下列文件打开模式: ios_base:app ios_base:binary ios_base:in los_base:out 若要以二进制读方式打开一个文件,需使用的文件打开模式
11、为_。(分数:2.50)A.B.C.D.23.下列控制格式输入/输出的操作符中,能够设置浮点数精度的是_。(分数:1.00)A.setprecisionB.setwC.setfillD.showpoint24.下面程序的输出结果是 _ 。 #includeiostream #includestring using namespace std; void main() charp110,p210; strcpy(p1,“abc“); strcpy(p2,“ABC“); charstr50=“xyz“; strcpy(str+2,strcat(p1,p2); coutstr; (分数:2.00)A
12、.xyabcABCB.yzabcABCC.xyzabcABCD.zabcABC25.下面程序的运行结果是 #include“ iostreamh“ #define sum(a,b)a * b void main( ) int x; x=sam(1+2,3); cout x; (分数:1.00)A.0B.9C.7D.526.有如下程序: #includeiostream using namespace std; class A public: virtual void func1()cout“A1“; void func2()cout“A2“; ; class B:public A public
13、: void func1()cout“B1“; void func2()cout“B2“; ; int main() A*p=new B; p-func1(); p-func2(); delete p; return 0; 执行这个程序的输出结果是_。(分数:2.50)A.B1B2B.A1A2C.B1A2D.A1B227.以下哪个是软件测试的目的?_(分数:2.50)A.证明程序没有错误B.演示程序的正确性C.发现程序中的错误D.改正程序中的错误28.下面的描述中, _ 是正确的。(分数:1.00)A.virtual可以用来声明虚函数B.含有纯虚函数的类是不可以用宋创建对象的,因为它是虚基类C
14、.即使基类的构造函数没有参数,派生类也必须建立构造函数D.静态数据成员可以通过成员初始化成员列表来初始化29.使用 ifstream流类定义流对象并打开磁盘文件时,文件的隐含打开方式为_。(分数:1.00)A.ios:inB.ios:outC.ios:inlios:outD.没有默认30.下列关于类定义的说法中,正确的是_。(分数:1.00)A.类定义中包括数据成员和函数成员的声明B.类成员的缺省访问权限是保护的C.数据成员必须被声明为私有的D.成员函数只能在类体外进行定义31.定义如下枚举类型;enum Monday, Tuesday, Wednesday, Thrusday, Friday
15、=2);,则下列语句正确的是 _ 。(分数:2.00)A.表达式 Wednesday=Friday 的值是 trueB.Day day;day=3C.Day day;day=Monday+3D.Day day;day=Tuesday+1032.有如下程序: #includeiostream using namespqce std; class TestClass private; char c; public; TestClass(char n):c(n) TestClass() coutc; ; class TestClass1:public TestClass private: char
16、c; public: TestClass1(char n):TestClass(n+1),c(n) TestClass1() coutc; ; int main() TestClass1 obj(“x“); return 0; 执行上面的程序将输出_。(分数:1.00)A.xyB.yxCxDy33.下列语句中,正确的是_。(分数:2.00)A.char*myString=“Hello-World!“;B.char myString=“Hello-World!“;C.char myString11=“Hello-World!“;D.char myString12=“Hello-World!“;3
17、4.C+中的类有两种用法:一种是类的实例化,即生成类的对象,并参与系统的运行,另一种是通过 _ 派生出新的类。(分数:2.00)A.复用B.继承C.封装D.引用35.一个栈的初始状态为空。现将元素 1、2、3、4、5、A、B、C、D、E 依次入栈,然后再依次出栈,则元素出栈的顺序是_。(分数:2.50)A.123456ABCDEB.EDCBA54321C.ABCDE12345D.54321EDCBA二级 C+分类模拟 264答案解析(总分:65.00,做题时间:90 分钟)一、选择题(总题数:35,分数:65.00)1.要定义一个引用变量 p,使之引用类 MyClass的一个对象,正确的定义语
18、句是_。(分数:2.50)A.MyClass p=MyClass;B.MyClass p=new MyClass;C.MyClassp=new MyClass;D.MyClass a,p=a; 解析:解析 选项 A错误不存在这样的定义方式;选项 B定义了一个 MyClass类的对象 p;选项 C是Java里的定义方式。2.将:x+y*z 中的“+”用成员函数重载,“*”用友元函数重载应写为 _ 。(分数:2.00)A.operator+(operator*(y, z)B.operator+(operator*(y, z) C.operator+(x*(y, z)D.x+(operator*(y
19、, z)解析:解析 在定义了重载运算符后的函数后,函数 operator+重载了运算符“+”。如果在类以外的其他地方定义了一个函数,在类体中用 friend对该函数进行声明,此函数就称为本类的友员函数。“*”用友元函数重载就是运算符函数不作为成员函数,而把它放在类外,“*”被改写为“operator*”。“+”为成员函数重载,x.operator+。所以 x+y*z被改写为“x.operator+(operator*(y,z)”。3.有如下程序: #includeiostream using namespace std; class Basel public: Basel(int d) cou
20、td; Base1() ; class Base2 public: Base2(int d) coutd; Base2() ; class Derived:public Base1,Base2 public: Derived(int a,int b,int c,int d); Base1(b),Base2(a),b1(d),b2(c) Private: int b1; int b2; ; int main() Derived d(1,2,3,4); return 0; 运行时的输出结果是_。(分数:2.00)A.1234B.2134C.12D.21 解析:解析 程序在创建派生类对象 d时,分别
21、调用基类 Base1和 Base1的构造函数。4.假定其中的 x的单位是角度且不考虑丌的值的精度,则与数学公式 (分数:2.50)A.sqrt(cos(x)B.sqrt(abs(cos(x*3.14/180)C.sqrt(abs(cos(x*(/180)D.sqrt(fabs(cos(x*3.14/180) 解析:解析 本题考查数学表达式的掌握,首先应转换为弧度,然后作为 cos函数的参数求绝对值,最后是开方函数。考生需要掌握的是常用的数学函数。5.通过派生类的对象可直接访问的是_。(分数:1.00)A.公有继承基类中的公有成员 B.私有继承基类中的公有成员C.公有继承基类中的保护成员D.私有
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 二级 分类 模拟 264 答案 解析 DOC
