【计算机类职业资格】二级C++-9-1及答案解析.doc
《【计算机类职业资格】二级C++-9-1及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】二级C++-9-1及答案解析.doc(26页珍藏版)》请在麦多课文档分享上搜索。
1、二级 C+-9-1 及答案解析(总分:83.50,做题时间:90 分钟)一、B选择题/B(总题数:35,分数:58.50)1.有如下类声明:class XAint x;public:XA(int n)x=n;class XB:public XAint y;public:XB(int a,int b);在构造函数 XB 的下列定义中,正确的是U /U。 A. XB:XB(int a,int b):x(a),y(b) B. XB:XB(int a,int b):XA(a),y(b) C. XB:XB(int a,int b):x(a),XB(b) D. XB:XB(int a,int b):XA(
2、a),XB(b)(分数:2.00)A.B.C.D.2.静态数据成员是为U /U的数据。 A. 私有 B. 保护 C. 所有对象共享 D. 类成员(分数:2.00)A.B.C.D.3.下列选项中不属于软件生命周期开发阶段任务的是U /U。 A.软件测试 B.概要设计 C.软件维护 D.详细设计(分数:2.00)A.B.C.D.4.能正确表示逻辑关系:“a10 或 a0”的 C语言表达式是 A. a10 or a0 B. a0 | a10 C. a10 void try(int,int,int,int);int main ( )int x,y,z,r;x=1;y=2;try(x,y,z,r);co
3、utrend1;return 0;void try(int x,int y, int z,int r)z = x+y;x = X*X;y = y*y;r = z+x+y; A. 18 B. 9 C. 10 D. 不确定(分数:1.00)A.B.C.D.11.在一个长度为 n 的线性表中删除一个元素,最坏情况下需要移动的数据元素数目为 U /U。 A. 1 B. n-1 C. n+1 D. n2(分数:1.00)A.B.C.D.12.下列叙述中错误的是U /U。 A. 一个函数中可以有多条 return 语句 B. 调用函数必须在一条独立的语句中完成 C. 函数中可通过 return 语句传递函
4、数值 D.主函数名 main 也可以带有形参(分数:2.00)A.B.C.D.13.假设 a 为一个整型数组名,则元素 a4的字节地址为_ 。 A. a+4 B. a+8 C. a+16 D. a+32(分数:2.00)A.B.C.D.14.下列叙述中正确的是 A. 数据库系统是一个独立的系统,不需要操作系统的支持 B. 数据库设计是指设计数据库管理系统 C. 数据库技术的根本目标是要解决数据共享的问题 D. 数据库系统中,数据的物理结构必须与逻辑结构一致(分数:1.00)A.B.C.D.15.下面关于动态联编的描述中,错误的是U /U。 A. 动态联编是以虚函数为基础的。 B. 动态联编是在
5、运行时确定所调用的函数代码 C. 动态联编调用函数操作是指向对象的指针或者对象的引用。 D. 动态联编是在编译时确定操作函数(分数:2.00)A.B.C.D.16.下列说法中错误的是 A.公有继承时基类中的 public 成员在派生类中仍是 public 成员 B.私有继承时基类中的 protecte 成员在派生类中仍是 protected 成员 C.私有继承时基类中的 public 成员在派生类中是 private 成员 D.保护继承时基类中的 public 成员在派生类中是 protected 成员 (分数:1.00)A.B.C.D.17.判断字符型变量 ch 是否为大写英文字母,应使用表
6、达式U /U。 A.ch=Aint main ()char s=“/n123/“;coutstrlen (s) “, “sizeof (s) end1;return 0; A. 赋初值的字符串有错 B. 6,7 C. 5,6 D. 6,6(分数:1.00)A.B.C.D.21.对关系 S 和 R 进行集合运算,结果中既包含 S 中的所有元组也包含 R 中的所有元组,这样的集合运算称为U /U。 A.并运算 B.交运算 C.差运算 D.积运算(分数:2.00)A.B.C.D.22.下列关于重载函数的调用时选择的依据中,错误的是U /U。 A. 根据函数参数个数不同 B. 根据函数参数类型不同 C
7、. 根据函数名字不同 D. 根据函数的返回值不同(分数:2.00)A.B.C.D.23.下列关于 break 语句的叙述不正确的是U /U。 A. break 语句可用在循环体中,它将使执行流程跳出本层循环体 B. break 语句可用在 switch 语句中,它将使执行流程跳出当前 switch 语句 C. break 语句可用在 if 语句中,它将使执行流程跳出当前 if 语句 D. break 语句在一层循环体中可以出现多次(分数:2.00)A.B.C.D.24.语句 coutsetprecision(2)1024.4567;的输出结果为 A.1024.4567 B.1024 C.102
8、4.45 D.le+003(分数:1.00)A.B.C.D.25.有如下语句序列:char str10;cinstr;当从键盘输入“I love this game“时,str 中的字符串是 A. “I love this game“ B. “I love this“ C. “I love“ D. “I“(分数:2.00)A.B.C.D.26.若有如下定义和语句:int s45,(*p)5;p=S;则指针对 s 数组中第三个元素的正确引用形式是U /U。 A. p03 B. p12 C. p02 D. p13(分数:2.00)A.B.C.D.27.带有虚基类的多层派生类构造函数的成员初始化列表
9、中都要列出虚基类的构造函数,这样将对虚基类的子对象初始化_。 A.与虚基类下面的派生类个数有关 B.多次 C.两次 D.一次(分数:1.00)A.B.C.D.28.派生类的成员函数不能访问基类的U /U。 A.公有成员和保护成员 B.公有成员 C.私有成员 D.保护成员(分数:2.00)A.B.C.D.29.有如下程序:# includeiostreamusmg namespace std;class Apublic:A(int i): r1(i)void print()(coutEr1-;void print()constcoutCr1*r1一;private:int r1;int main
10、()A a1(2); const A a2(4);a1.print(); a2.print();return 0;运行时的输出结果是_。 A.运行时出错 B.E2-Cl6- C.C4-C16- D.E2-E4-(分数:2.50)A.B.C.D.30.数据库系统的核心是 A.数据库 B.数据库管理系统 C.模拟模型 D.软件工程 (分数:1.00)A.B.C.D.31.语句 cout setprecison (3)3.1415926end1;的输出为U /U。 A.3.14 B.3.1 C.3.142 D.3.141(分数:2.00)A.B.C.D.32.模板函数的真正代码是在U /U时候产生。
11、 A. 源程序中声明函数时 B. 源程序中定义函数时 C. 源程序中调用函数时 D. 运行执行函数时(分数:2.00)A.B.C.D.33.关于二义性的描述错误的是U /U。 A. 一个子类的两个父类中都有某个同名成员,在子类中对该成员访问可能出现二义性 B. 解决二义性可以用对成员名的限定法 C. 父类和子类中同时出现同名函数,也可能存在二义性 D. 一个子类是从两个父类派生出来的,而这两个父类只有一个共同的父类,对该父类成员进行访问时,可能出现二义性(分数:1.00)A.B.C.D.34.关于在调用模板函数时实参的使用,下列表述中正确的是 A. 对于虚拟类型参数所对应的模板实参,如果能从模
12、板函数的实参中获得相同的信息,则都可以省略 B. 对于虚拟类型参数所对应的模板实参,如果它们是参数表中的最后的若干个参数,则都可以省略 C. 对于虚拟类型参数所对应的模板实参,若能够省略则必须省略 D. 对于常规参数所对应的模板实参,任何情况下都不能省略(分数:2.00)A.B.C.D.35.下列程序的执行结果是_。#includeiostream.h#includestdlib.hclass TestClasspublic:int x,y;TestClass () x=y=0;TestClass (int a,int b)x=a;y=b;void disp()cout“x=“x“,y=“ye
13、nd1;void main()TestClass s1(2,3);s1.disp(); A. x=2,y=2 B. x=2,y=3 C. x=3,y=2 D. x=3,y=3(分数:2.00)A.B.C.D.二、B填空题/B(总题数:15,分数:25.00)36. 1 是从二维表列的方向进行的运算。(分数:1.00)填空项 1:_37.类中数据成员和成员函数的默认访问级别为 1。(分数:2.00)填空项 1:_38.以下程序运行后的输出结果是U U /U /U。 #include iostream #include string using namespace std; class Y; cl
14、ass X iht x; char *strx; public: X(int a,char *str) x=a; strx=new charstrlen(str)+1; strcpy(strx,str); void show(Y ; class Y private: iht y; char *stry; public: Y(int b,char *str) y=b; stry=new charstrlen(str)+ 1 ; strcpy(stry, str); friend void X:show(Y ; void X:show(Y coutob.stryendl; int main() X
15、 a(10,“stringX“); Y b(20,“stringY“); a.show(b); return 0; (分数:1.00)填空项 1:_39.数据的逻辑结构在计算机存储器内的表示,称为数据的U U /U /U。(分数:2.00)填空项 1:_40.软件工程研究的内容主要包括: 【4】 技术和软件工程管理。(分数:1.00)填空项 1:_41.假设用一长度为 50 的数组(数组元素的下标从 0 到 49)作为栈的存储空间,栈底指针 bottom 指向栈底元素,栈顶指针 top 指向栈顶元素,如果 bottom=49,top=30(数组下标),则栈中具有 1 个元素。(分数:2.00)
16、填空项 1:_42.已知有函数 f 的定义如下: int f() static int s=0; s+=2; return s; 则在某程序中第二次执行函数调用语句 f();时,函数 f 的返回值是_。(分数:2.00)填空项 1:_43.已知下列程序的输出结果是 42,请将画线处缺失的部分补充完整。 #include iostream using namespace std; class Foo int value; public: Foo 0=:value(0) void setValue(int value) U U /U /U= value; /给 Foo 的数据成员 value 赋值
17、 void print() cout value; ; int main() Foo f; f.setValue(42); f.print(); return(); (分数:2.00)填空项 1:_44.下列程序运行后的输出结果是 _。 #includeiostream.h void main() int s=0,k for(k=7;k=0;k-) switch(k) case 1: case 4: case 7:s+ +;break: case 2: case 3: case 6:break; case 0: case 5:s+=2;break; cout“s=“sendl; (分数:1.0
18、0)填空项 1:_45.数据的逻辑结构在计算机存储空间中的存放形式称为数据的 1。(分数:2.00)填空项 1:_46.下面程序的执行结果是_。 #includeiostream #includeiomanip using namespace std; void main() coutsetfill(x)setw(10)“Hello“endl; (分数:2.00)填空项 1:_47.虚函数必须是类的 1。(分数:2.00)填空项 1:_48.一个类中有 1 个析构函数。(分数:1.00)填空项 1:_49.软件生命周期分为软件定义期、软件开发期和软件维护期,详细设计属于 1 中的一个阶段。(分
19、数:2.00)填空项 1:_50.在算法正确的前提下,评价一个算法的两个标准是U /U。(分数:2.00)填空项 1:_二级 C+-9-1 答案解析(总分:83.50,做题时间:90 分钟)一、B选择题/B(总题数:35,分数:58.50)1.有如下类声明:class XAint x;public:XA(int n)x=n;class XB:public XAint y;public:XB(int a,int b);在构造函数 XB 的下列定义中,正确的是U /U。 A. XB:XB(int a,int b):x(a),y(b) B. XB:XB(int a,int b):XA(a),y(b)
20、 C. XB:XB(int a,int b):x(a),XB(b) D. XB:XB(int a,int b):XA(a),XB(b)(分数:2.00)A.B. C.D.解析:解析 此题考查的是派生类中构造函数的定义。派生类的构造首先要调用基类的构造函数,对基类成员初始化;然后对派生类中的新增成员初始化。格式:派生类名(构造函数形参表)基类构造函数(形参表)。2.静态数据成员是为U /U的数据。 A. 私有 B. 保护 C. 所有对象共享 D. 类成员(分数:2.00)A.B.C. D.解析:解析 静态数据成员是一种特殊的数据成员。静态数据成员不属于某一个对象,在为对象所分配的空间中不包括静态
21、数据成员所占的空间。所有对象共享这些静态数据成员,都可以引用它。3.下列选项中不属于软件生命周期开发阶段任务的是U /U。 A.软件测试 B.概要设计 C.软件维护 D.详细设计(分数:2.00)A.B.C. D.解析:4.能正确表示逻辑关系:“a10 或 a0”的 C语言表达式是 A. a10 or a0 B. a0 | a10 C. a10 void try(int,int,int,int);int main ( )int x,y,z,r;x=1;y=2;try(x,y,z,r);coutrend1;return 0;void try(int x,int y, int z,int r)z
22、= x+y;x = X*X;y = y*y;r = z+x+y; A. 18 B. 9 C. 10 D. 不确定(分数:1.00)A.B.C.D. 解析:解析 本题常见的错误解答是:把 x=1,y=2 代入到函数 try 中,逐步计算出 r=8。最后得到 r 的输出值是 8。下面是正确解答。根据程序逐步分析: 程序中定义了一个名为 try 的 void 型函数,即函数 try()没有任何返回值。 而 try()函数在主函数中是以一条独立语句的方式被调用的,且主函数最后输出变量 r 的值。 但在主函数中,并没有对变量 r 赋值。 在 C+语言中,数据只能从实参单向传递给形参,称为按值传递。也就是
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 二级 C91 答案 解析 DOC
