ImageVerifierCode 换一换
格式:DOC , 页数:19 ,大小:69.50KB ,
资源ID:1324271      下载积分:5000 积分
快捷下载
登录下载
邮箱/手机:
温馨提示:
如需开发票,请勿充值!快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝扫码支付 微信扫码支付   
注意:如需开发票,请勿充值!
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【http://www.mydoc123.com/d-1324271.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(【计算机类职业资格】二级C++分类模拟273及答案解析.doc)为本站会员(amazingpat195)主动上传,麦多课文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知麦多课文库(发送邮件至master@mydoc123.com或直接QQ联系客服),我们立即给予删除!

【计算机类职业资格】二级C++分类模拟273及答案解析.doc

1、二级 C+分类模拟 273 及答案解析(总分:73.00,做题时间:90 分钟)一、选择题(总题数:40,分数:73.00)1.有以下程序: #includeiostream using namespace std; class sample private: int n; public: sample() sample(int m) n-m; sample add(sample s1,sample s2) this-n=s1.n+s2.n; return(*this): void disp() cout“n=“nendl; ; int main() sample s1(10),s2(5),s

2、3; s3.add(s1,s2); s3.disp(); return 0; 程序运行后,输出的结果是_。(分数:1.00)A.n=10B.n=5C.n=20D.n=152.在关系模型中,(分数:1.00)A.为了建立一个关系,首先要构造数据的逻辑关系B.表示关系的二维表中各元组的每一个分量还可以分成若干数据项C.一个关系的属性名表称为关系模式D.一个关系可以包括多个二维表3.下列对重载函数的描述中,错误的是 _ 。(分数:2.00)A.重载函数中不允许使用默认参数B.重载函数中编译是根据参数表进行选择的C.不要使用重载函数来描述毫不相干的函数D.构造函数重载将会给初始化带来多种方式4.有如下

3、类定义: ciass A char*a; public: A():a(0) A(char*aa)/把 aa 所指字符串拷贝到 a 所指向的存储空间 a=_; strcpy(a,aa); A()(deletea; ; 横线处应填写的表达式是_。(分数:2.00)A.new charstrlen(aa)+1B.charstrlen(aa)+1C.charstrlen(aa)D.new charsizeof(aa)-15.下列选项中,不是一个算法的基本特征的是_。(分数:1.00)A.完整性B.可行性C.有穷性D.拥有足够的情报6.下列关于运算符重载不正确的是(分数:2.00)A.运算符重载不能改变

4、运算符的操作数个数B.运算符重载不能改变运算符的优先级C.运算符重载不能改变运算符的结合性D.运算符重载能改变对预定义类型数据的操作方式7.如果进栈序列为 el、e2、e3、e4,则可能的出栈序列是_。(分数:2.50)A.c3、e1、e4、e2B.c2、e4、e3、e1C.e3、e4、el、e2D.任意顺序8.建立一个类对象时,系统自动调用_。(分数:2.00)A.析构函数B.构造函数C.静态函数D.友元函数9.有如下程序: #includeiostream using namespace std; class Part public: Part(int x=0): val(x) coutv

5、al; Part() coutval; private: int val; ; class Whole public: whole(int x, int y, int z=0): p2(x), p1(y), val(z) coutVal; Whole() coutval; private: Part p1, p2; int val; ; int main() Whole obj(1, 2, 3); return 0; 执行这个程序的输出结果是_。(分数:1.00)A.123321B.213312C.213D.12312310.下列叙述中正确的是_。(分数:2.50)A.栈是一种先进先出的线性表

6、B.队列是一种后进先出的线性表C.栈与队列都是非线性结构D.以上三种说法都不对11.程序中有如下语句 for(int i=0;i5;i+)cout*(p+i)“,“;能够依次输出 int 型一维数组 a的前 5 个元素。由此可知,变量 P 的定义及初始化语句是 _ 。(分数:2.00)A.int*p=a;B.int p=a;C.*p=a;D.p=a;12.结构化程序设计的三种基本结构是_。(分数:1.00)A.过程、子程序和分程序B.顺序、选择和重复C.递归、堆栈和队列D.调用、返回和转移13.有如下说明 int a10=1,2,3,4,5,6,7,8,9,10,*p=a; 则数值为 9 的表

7、达式是_。(分数:2.00)A.*p+9B.*(p+8)C.*p+=9D.p+814.有如下程序: #includeiostream using namespace std; int main() int*p; *p=9; cout“The value at p:“*p; return 0; 编译运行程序将出现的情况是_。(分数:2.00)A.编译时出现语法错误,不能生成可执行文件B.运行时一定输出:The value at p:9C.运行时一定输出:The value at p:*9D.运行时有可能出错15.若有下面的函数调用: fun(a+b,3,max(n-1,b) 则 fun 的实参个

8、数是_。(分数:1.00)A.3B.4C.5D.616.有如下程序: #includeiostream using namespace std; class Instrument public: virtual void Display()=0; ; class Piano:public Instrument public: void Display()/*函数体略*/ ; int main() Instrument s; Instrument*p=0; /; return 0; 下列叙述中正确的是_。(分数:1.00)A.语句“Insturment*p=0;”编译时出错B.语句“Instru

9、ment s;”编译时出错C.类 Piano 中的 Display 函数不是虚函数D.类 Instrument 是一个虚基类17.假设 a 为一个整型数组名,则元素 a4的字节地址为_ 。(分数:2.00)A.a+4B.a+8C.a+16D.a+3218.以下哪些不是程序调试的基本步骤_?(分数:2.50)A.分析错误原因B.错误定位C.修改设计代码以排除错误D.回归测试,防止引入新错误19.要利用 C+流实现输入输出的各种格式控制,必须在程序中包含的头文件是_。(分数:2.00)A.fstreamB.istreamC.cstdlibD.iomanip20.软件工程的出现是由于 _ 。(分数:

10、2.00)A.程序设计方法学的影响B.软件产业化的需要C.软件危机的出现D.计算机的发展21.数据库设计中反映用户对数据要求的模式是_。(分数:2.50)A.内模式B.概念模式C.外模式D.设计模式22.下列关于栈叙述正确的是_。(分数:2.50)A.栈顶元素最先被删除B.栈顶元素最后才能被删除C.栈底元素永远不能被删除D.以上三种说法都不对23.软件需求分析应确定的是用户对软件的 _。(分数:2.00)A.功能需求和非功能需求B.性能需求C.非功能需求D.功能需求24.下列程序执行结果是_。 #includeiostream.h class A public; int a; A():a(10

11、)coutaend1; ; void main() A obj1; A obj2(obj1); cout“ “obj2.aend1; (分数:2.50)A.10 10B.编译错误 缺少拷贝构造函数C.10 随机数D.随机数 随机数25.下列选项中,与实现运行时多态性无关的是_。(分数:2.00)A.重载函数B.虚函数C.指针D.引用26.有如下程序: #includeiostream using namespace std; class TV public: TV(int s=41):size(s) void Print()cout“/“N“size; void Print() constco

12、ut“/“C“size; void Print(int s)cout“/“S“size; private: int size; ; int main() TV rooml; const TV room2(54); rooml.Print(); room2.Print(); return 0; 运行时的输出结果是_。(分数:1.00)A./N41/C54B./N41/S54C./C41/N54D./C41/C5427.在下面的 4 个关键字中用来说明虚函数的是(分数:1.00)A.virtualB.publicC.protectedD.private28.下面是关于派生类声明的开始部分,其中正确

13、的是_。(分数:1.00)A.class virtual B:public AB.virtual class B:public AC.class B:public A virtualD.class B:virtual publicA29.有如下类定义: class AA int a; public: int getRef()constreturn / int getValue()constreturn a;/ void set(int n)consta=n;/ friend void show(AA aa) constcouta;/ ; 其中四个函数的定义中正确的是_。(分数:1.00)A.B

14、.C.D.30.下面程序的输出结果是 _ 。 #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.xyabcABCB.yzabcABCC.xyzabcABCD.zabcABC31.在下列成对的表达式中,运算符“/”的意义相同的一对是_。(分数:3.00)A.8/3 和 8.0/3.0B.8

15、/3.0 和 8/3C.8.0/3 和 8/3D.8.0/3.0 和 8.0/332.一个函数为 void f(int,char ch=“a“),另一个函数为 void f(iht),则它们 _ 。(分数:2.00)A.不能在同一程序中定义B.可以在同一程序中定义并可重载C.可以在同一程序中定义,但不可以重载D.以上三种说法均不正确33.有如下程序: #includeiostream using namespqce std; class TestClass private; char c; public; TestClass(char n):c(n) TestClass() coutc; ;

16、class TestClass1:public TestClass private: char c; public: TestClass1(char n):TestClass(n+1),c(n) TestClass1() coutc; ; int main() TestClass1 obj(“x“); return 0; 执行上面的程序将输出_。(分数:1.00)A.xyB.yxCxDy34.下列选项中不属于字符常量的是_。(分数:2.50)A.“C“B.“C“C.“/xCC“D.“/072“35.下列程序的运行结果是 _ 。 #includeiostream.h void fun(int *

17、a, int *b) int *k; k=a; a=b; b=k; void main() int a=2OO4,b=9,*x= fun(x, y); couta“ “bend1;(分数:2.00)A.20049B.92004C.00D.编译时出错36.数据库系统的核心是_。(分数:2.00)A.数据库B.数据库管理系统C.数据模型D.软件工具37.以下不使用线性结构表示实体之间联系的模型的是 _ 。(分数:2.00)A.线性表B.栈和队列C.二叉树D.以上三个都不是38.下面关于运算符重载的描述错误的是_。(分数:2.50)A.运算符重载不能改变操作数的个数、运算符的优先级、运算符的结合性和

18、运算符的语法结构B.不是所有的运算符都可以进行重载C.运算符函数的调用必须使用关键字 operatorD.在 C+语言中不可通过运算符重载创造出新的运算符39.若已定义; inta=0,1,2,3,4,5,6,7,8,9,*p=a,i; 其中 0i=9,则对 a 数组元素不正确的引用是 _ 。(分数:2.00)A.ap-aB.x( class sample private: int n; public: sample() sample(int m) n-m; sample add(sample s1,sample s2) this-n=s1.n+s2.n; return(*this): voi

19、d disp() cout“n=“nendl; ; int main() sample s1(10),s2(5),s3; s3.add(s1,s2); s3.disp(); return 0; 程序运行后,输出的结果是_。(分数:1.00)A.n=10B.n=5C.n=20D.n=15 解析:解析 本题考查 this 指针的使用类成员函数 add 中通过 this 指针实现私有数据成员 n 的赋值。2.在关系模型中,(分数:1.00)A.为了建立一个关系,首先要构造数据的逻辑关系B.表示关系的二维表中各元组的每一个分量还可以分成若干数据项C.一个关系的属性名表称为关系模式 D.一个关系可以包括

20、多个二维表解析:解析 在关系模型中,不需要事先构造数据的逻辑关系,只要将数据按照一定的关系存入计算机,也就是建立关系,选项 A 错误。对于表示关系的二维表,其最基本的要求是,表中元组的每一个分量必须是不可分的数据项,即不允许表中再有表,选项 B 和 D 错误。本题的正确答案是 C。3.下列对重载函数的描述中,错误的是 _ 。(分数:2.00)A.重载函数中不允许使用默认参数 B.重载函数中编译是根据参数表进行选择的C.不要使用重载函数来描述毫不相干的函数D.构造函数重载将会给初始化带来多种方式解析:解析 选项 A 中,重载函数中是允许使用默认参数的;为了使重载函数有意义,不要使用重载函数来描述

21、毫不相干的函数;重载函数中编译是根据参数表进行选择的,包括参数的个数和类型。4.有如下类定义: ciass A char*a; public: A():a(0) A(char*aa)/把 aa 所指字符串拷贝到 a 所指向的存储空间 a=_; strcpy(a,aa); A()(deletea; ; 横线处应填写的表达式是_。(分数:2.00)A.new charstrlen(aa)+1 B.charstrlen(aa)+1C.charstrlen(aa)D.new charsizeof(aa)-1解析:解析 函数 strlen(aa)返回字符串 aa 中字符的个数,不包括末尾的空字符。所以在

22、内存空间创建字符数组 a 时,需要字符数组的长度是 strlen(aa)+1。5.下列选项中,不是一个算法的基本特征的是_。(分数:1.00)A.完整性 B.可行性C.有穷性D.拥有足够的情报解析:解析 作为一个算法,一般应该具有下列匹个特征:可行性,即考虑到实际的条件能够达到一个满意的结果;确定性,算法中的每一个步骤都必须是有明确定义的;有穷性,一个算法必须在有限的时间内完成;拥有足够的情报。6.下列关于运算符重载不正确的是(分数:2.00)A.运算符重载不能改变运算符的操作数个数B.运算符重载不能改变运算符的优先级C.运算符重载不能改变运算符的结合性D.运算符重载能改变对预定义类型数据的操

23、作方式 解析:解析 考查 C+语言中操作符重载的概念。 解题要点 运算符重载的规则是重载时不能改变运算符的操作数个数,不能改变运算符的优先级,不能改变运算符的结合性,不能改变对预定义类型数据的操作方式。 考点链接 运算符重载的关键字是 operator。7.如果进栈序列为 el、e2、e3、e4,则可能的出栈序列是_。(分数:2.50)A.c3、e1、e4、e2B.c2、e4、e3、e1 C.e3、e4、el、e2D.任意顺序解析:解析 根据栈先进后出的特点可知 el 肯定是最后出栈的,因此正确答案为选项 B。8.建立一个类对象时,系统自动调用_。(分数:2.00)A.析构函数B.构造函数 C

24、.静态函数D.友元函数解析:解析 建立一个类的对象时,编译程序需要为对象分配存储空间,进行必要的初始化。在 C+中,这项工作是由构造函数来完成。9.有如下程序: #includeiostream using namespace std; class Part public: Part(int x=0): val(x) coutval; Part() coutval; private: int val; ; class Whole public: whole(int x, int y, int z=0): p2(x), p1(y), val(z) coutVal; Whole() coutval

25、; private: Part p1, p2; int val; ; int main() Whole obj(1, 2, 3); return 0; 执行这个程序的输出结果是_。(分数:1.00)A.123321B.213312 C.213D.123123解析:解析 本题考查带参数的构造函数。本题中定义了一个对象 obj,那么执行其构造函数,初始化p1,p2 的顺序是由声明这两个成员的顺序决定的,而不是由参数化列表顺序决定,所以本题中,会先执行 p1,输出 2,然后执行 p2 输出 1,然后输出 3,最后一次输出 312。所以本题答案为 B。10.下列叙述中正确的是_。(分数:2.50)A.

26、栈是一种先进先出的线性表B.队列是一种后进先出的线性表C.栈与队列都是非线性结构D.以上三种说法都不对 解析:解析 栈是允许在同一端进行插入和删除操作的特殊线性表。允许进行插入和删除操作的一端称为栈顶(top),另一端为栈底(bottom);栈底固定,而栈顶浮动;栈中元素个数为零时称为空栈。插入一般称为进栈,删除则称为退栈。饯也称为后进先出表。11.程序中有如下语句 for(int i=0;i5;i+)cout*(p+i)“,“;能够依次输出 int 型一维数组 a的前 5 个元素。由此可知,变量 P 的定义及初始化语句是 _ 。(分数:2.00)A.int*p=a; B.int p=a;C.

27、*p=a;D.p=a;解析:解析 从循环语句中可以看出,是在 04 的循环中输出数组 a 中的前,5 个元素,输出的值为*(p+i),即为指针 p 向后移动指向的元素。所以初始化要将指针 p 指向数组 a,即 int*P=a;。12.结构化程序设计的三种基本结构是_。(分数:1.00)A.过程、子程序和分程序B.顺序、选择和重复 C.递归、堆栈和队列D.调用、返回和转移解析:解析 程序的三种基本控制结构包括顺序、选择和重复(循环),这三种结构足以表达出各种其他形式的结构。13.有如下说明 int a10=1,2,3,4,5,6,7,8,9,10,*p=a; 则数值为 9 的表达式是_。(分数:

28、2.00)A.*p+9B.*(p+8) C.*p+=9D.p+8解析:解析 此题考查的是指针的运用。选项 A 中,*p 返回的是数组元素 a0的值,所以最后结果是1+9=10;选项 B 是指针 p 后移 8 个单位位置处的值,即 a8其值为 9;选项 C 中表达式的值和选项 A 相同;选项 D 的值是一个地址值,该值无法确定。14.有如下程序: #includeiostream using namespace std; int main() int*p; *p=9; cout“The value at p:“*p; return 0; 编译运行程序将出现的情况是_。(分数:2.00)A.编译时

29、出现语法错误,不能生成可执行文件B.运行时一定输出:The value at p:9C.运行时一定输出:The value at p:*9D.运行时有可能出错 解析:解析 此题考查的是指针的使用。本题中,在给*p 赋值前,指针 p 并没有指向一个具体的对象。此时可以通过编译,但运行时由于 p 中为随机值,该赋值可能会破坏内存中某个重要的地址空间的内容,导致程序出错。15.若有下面的函数调用: fun(a+b,3,max(n-1,b) 则 fun 的实参个数是_。(分数:1.00)A.3 B.4C.5D.6解析:解析 本题考查函数实参个数的基础知识,根据实参的概念,(a+b)、3、max(n-1

30、,b)分别为其中的 3 个实参。故答案为 A。16.有如下程序: #includeiostream using namespace std; class Instrument public: virtual void Display()=0; ; class Piano:public Instrument public: void Display()/*函数体略*/ ; int main() Instrument s; Instrument*p=0; /; return 0; 下列叙述中正确的是_。(分数:1.00)A.语句“Insturment*p=0;”编译时出错B.语句“Instrume

31、nt s;”编译时出错 C.类 Piano 中的 Display 函数不是虚函数D.类 Instrument 是一个虚基类解析:解析 本题考查纯虚函数和抽象类,纯虚函数是在声明虚函数时被“初始化”为 0 的函数,包含纯虚函数的类为抽象类,抽象类不能被实例化,所以语句“Instrument s;”在编译时出错。17.假设 a 为一个整型数组名,则元素 a4的字节地址为_ 。(分数:2.00)A.a+4B.a+8C.a+16 D.a+32解析:解析 a4的字节地址为 a+4*4。18.以下哪些不是程序调试的基本步骤_?(分数:2.50)A.分析错误原因 B.错误定位C.修改设计代码以排除错误D.回

32、归测试,防止引入新错误解析:解析 程序调试的基本步骤: (1)错误定位。从错误的外部表现形式入手,研究有关部分的程序,确定程序中出错位置,找出错误的内在原因。(2)修改设计和代码,以排除错误。(3)进行回归测试,防止引进新的错误。19.要利用 C+流实现输入输出的各种格式控制,必须在程序中包含的头文件是_。(分数:2.00)A.fstreamB.istreamC.cstdlibD.iomanip 解析:20.软件工程的出现是由于 _ 。(分数:2.00)A.程序设计方法学的影响B.软件产业化的需要C.软件危机的出现 D.计算机的发展解析:解析 软件工程的出现源自于软件危机。为了消除软件危机,通

33、过认真研究解决软件危机的方法,认识到软件工程是使计算机软件走向工程科学的途径,逐步形成了软件工程的概念。21.数据库设计中反映用户对数据要求的模式是_。(分数:2.50)A.内模式B.概念模式C.外模式 D.设计模式解析:解析 本题考查的知识点是数据库的三级模式,包括:慨念模式、外模式和内模式。其中,概念模式是数据库系统中对全局数据逻辑结构的描述。外模式是用户的数据视图。内模式又称物理模式,给出了数据库的物理存储结构和物耻方法,内模式对用户是透明的。因此本题正确答案为 C。22.下列关于栈叙述正确的是_。(分数:2.50)A.栈顶元素最先被删除 B.栈顶元素最后才能被删除C.栈底元素永远不能被

34、删除D.以上三种说法都不对解析:解析 栈是限定在一端进行插入删除的先入后出的线性表数据结构,栈顶元素最后被插入到栈中,但是最先被删除;而栈底元素最先被插入,最后被删除。23.软件需求分析应确定的是用户对软件的 _。(分数:2.00)A.功能需求和非功能需求B.性能需求C.非功能需求D.功能需求 解析:24.下列程序执行结果是_。 #includeiostream.h class A public; int a; A():a(10)coutaend1; ; void main() A obj1; A obj2(obj1); cout“ “obj2.aend1; (分数:2.50)A.10 10

35、B.编译错误 缺少拷贝构造函数C.10 随机数D.随机数 随机数解析:解析 本题考查拷贝构造函数的知识。如果类中没有实现拷贝构造函数可以完成数据成员的自动赋值,对于复杂对象,则可能需要显式定义拷贝构造函数。25.下列选项中,与实现运行时多态性无关的是_。(分数:2.00)A.重载函数 B.虚函数C.指针D.引用解析:解析 在 C+中,多态性可以分为两类:编译时的多态性和运行时的多态性。编译时的多态性是通过函数重载和模版体现的,运行时的多态性是通过虚函数体现的。26.有如下程序: #includeiostream using namespace std; class TV public: TV(

36、int s=41):size(s) void Print()cout“/“N“size; void Print() constcout“/“C“size; void Print(int s)cout“/“S“size; private: int size; ; int main() TV rooml; const TV room2(54); rooml.Print(); room2.Print(); return 0; 运行时的输出结果是_。(分数:1.00)A./N41/C54 B./N41/S54C./C41/N54D./C41/C54解析:解析 本题考查构造函数相关知识,本题中定义一个对

37、象 room1,执行 room1.Print 时执行构造函数给 size 赋值为 41,然后执行 void Print() cout“/“N“size;输出/N41。而定义const TV room2(54)时,给 size 赋值为 54,最后输出结果为/C54,所以答案为 A。27.在下面的 4 个关键字中用来说明虚函数的是(分数:1.00)A.virtual B.publicC.protectedD.private解析:解析 C+中说明虚函数的方法为:virtual类型说明符函数名(参数表);。其中,被关键词 virtual 说明的函数称为虚函数。28.下面是关于派生类声明的开始部分,其中

38、正确的是_。(分数:1.00)A.class virtual B:public AB.virtual class B:public AC.class B:public A virtualD.class B:virtual publicA 解析:解析 C+中,虚基类说明格式为 class类名:virtual继承方式基类名。其中,virtual 是虚基类的关键词。在定义派生类时使用虚基类的说明,写在派生类名的后面。29.有如下类定义: class AA int a; public: int getRef()constreturn / int getValue()constreturn a;/ vo

39、id set(int n)consta=n;/ friend void show(AA aa) constcouta;/ ; 其中四个函数的定义中正确的是_。(分数:1.00)A.B. C.D.解析:解析 本题考查常成员函数,常成员函数只能引用本类中的数据成员,而不能修改它。所以本题答案为 B。30.下面程序的输出结果是 _ 。 #includeiostream #includestring using namespace std; void main() charp110,p210; strcpy(p1,“abc“); strcpy(p2,“ABC“); charstr50=“xyz“; s

40、trcpy(str+2,strcat(p1,p2); coutstr; (分数:2.00)A.xyabcABC B.yzabcABCC.xyzabcABCD.zabcABC解析:解析 本题考查字符串操作函数和指针的使用。strcat(p1,p2)将字符串 p1 和 p2 连接,接着调用 strcpy 函数,从数组 str 的第 3 个位置开始复制连接后的字符串,因此本题答案为 xyabcABC。31.在下列成对的表达式中,运算符“/”的意义相同的一对是_。(分数:3.00)A.8/3 和 8.0/3.0B.8/3.0 和 8/3C.8.0/3 和 8/3D.8.0/3.0 和 8.0/3 解析

41、:32.一个函数为 void f(int,char ch=“a“),另一个函数为 void f(iht),则它们 _ 。(分数:2.00)A.不能在同一程序中定义B.可以在同一程序中定义并可重载 C.可以在同一程序中定义,但不可以重载D.以上三种说法均不正确解析:解析 题目中的两个函数参数个数不同,因此可以在同一程序中定义为重载函数。所以,选项 B)叙述正确。33.有如下程序: #includeiostream using namespqce std; class TestClass private; char c; public; TestClass(char n):c(n) TestCla

42、ss() coutc; ; class TestClass1:public TestClass private: char c; public: TestClass1(char n):TestClass(n+1),c(n) TestClass1() coutc; ; int main() TestClass1 obj(“x“); return 0; 执行上面的程序将输出_。(分数:1.00)A.xy B.yxCxDy解析:解析 本题中 TestClass 为基类TestClass1 为派生类。在主函数中定义 TestClass1 对象obj(“x“),“TestClass1(char n):T

43、estClass(n+1),c(n)”,所以输出 x,然后调用基类构造函数,“x“+1=“y“,所以输出 y,即答案为 xy。34.下列选项中不属于字符常量的是_。(分数:2.50)A.“C“B.“C“ C.“/xCC“D.“/072“解析:解析 字符常量是用一对单引号括起来的,而字符串常量是用双引号括起来的字符序列,所以选项 B 不正确;选项 C 中“/xCC“是十六进制表示的转义字符;选项 D 中“/072“是八迸制表示的转义字符。35.下列程序的运行结果是 _ 。 #includeiostream.h void fun(int *a, int *b) int *k; k=a; a=b;

44、b=k; void main() int a=2OO4,b=9,*x= fun(x, y); couta“ “bend1;(分数:2.00)A.20049 B.92004C.00D.编译时出错解析:36.数据库系统的核心是_。(分数:2.00)A.数据库B.数据库管理系统 C.数据模型D.软件工具解析:解析 数据库管理系统是数据库系统的核心。37.以下不使用线性结构表示实体之间联系的模型的是 _ 。(分数:2.00)A.线性表B.栈和队列C.二叉树 D.以上三个都不是解析:38.下面关于运算符重载的描述错误的是_。(分数:2.50)A.运算符重载不能改变操作数的个数、运算符的优先级、运算符的结

45、合性和运算符的语法结构B.不是所有的运算符都可以进行重载C.运算符函数的调用必须使用关键字 operator D.在 C+语言中不可通过运算符重载创造出新的运算符解析:解析 例如“:”运算符就不能被重载;通过重载可以创造新的运算方式,但是不能臆造新的运算符;定义的时候必须使用关键字 operator,而调用时可直接使用运算符。39.若已定义; inta=0,1,2,3,4,5,6,7,8,9,*p=a,i; 其中 0i=9,则对 a 数组元素不正确的引用是 _ 。(分数:2.00)A.ap-aB.x(&ai)C.piD.a10 解析:解析 通常,引用一个数组元素可以用下标法,如 ap-a形式,或指针法,如*(&ai)的形式。本题中 a99,a10显然超出了数组范围,数组的下标是从 0 开始的。40.下列选项中,错误的 C+表达式是_。(分数:2.00)A.a+B.“b“=10 C.double(3/5)D.x+!=3|y解析:

copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
备案/许可证编号:苏ICP备17064731号-1