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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

【计算机类职业资格】二级C++笔试326及答案解析.doc

1、二级 C+笔试 326 及答案解析(总分:96.00,做题时间:90 分钟)一、B选择题/B(总题数:35,分数:70.00)1.若有说明语句: char a “It is mine“; char * p“It is mine“; 则以下不正确的叙述是(分数:2.00)A.a1 表示的是字符 t 的地址B.p 指向另外的字符串时,字符串的长度不受限制C.p 变量中存放的地址值可以改变D.a 中只能存放 10 个字符2.有如下程序: #inCludeiostream.h #dehne N 2 #dehne M N1 #denne NUM 2 * M1 Void main( ) int i; fo

2、r(i1;iNUM;i) cout i; 该程序中的 fof 循环执行的次数是(分数:2.00)A.5B.6C.7D.83.非空的循环单链表 head 的尾节点(由 p 所指向) ,满足(分数:2.00)A.p-nextNULLB.pNULLC.p-nextheadD.phead4.下列程序是用来判断数组中特定元素的位置所在,则输出结果为 #includeconio.h #includeiostream.h int fun(int * s,int t,int * k) int i; *k0; for(i0;it;i) if(s * k si ) *ki; retum s * k ; void

3、main( ) int a10 876,675,896,101,301,401,980,431,451,777,k; fun(a,10, cout k , ak ;(分数:2.00)A.7,431B.6C.980D.6,9805.设变量 a 是 int 型,f 是 double 型,i 是 float 型,则表达式 10ai * f 值的数据类型是(分数:2.00)A.intB.floatC.doubleD.不确定6.面向对象程序设计思想的主要特征中不包括(分数:2.00)A.继承性B.功能分解,逐步求精C.封装性和信息隐藏D.多态性7.数据库的故障恢复一般是由(分数:2.00)A.数据流图完

4、成的B.数据字典完成的C.DBA 完成的D.PAD 图完成的8.下列叙述中正确的是(分数:2.00)A.线性表是线性结构B.栈与队列是非线性结构C.线性链表是非线性结构D.二叉树是线性结构9.有以下语句,则对 a 数组元素的引用不正确的是(0i9) int a10 0,1,2,3,4,5,6,7,8,9, * pa;(分数:2.00)A.apaB.* ( cin a b; ka; if(ab) ka%b; else kb%a; cout k endl;(分数:2.00)A.5B.3C.2D.012.下列说法中,不属于数据模型所描述的内容的是(分数:2.00)A.数据结构B.数据操作C.数据查询

5、D.数据约束13.所有在函数中定义的变量,连同形式参数,都属于(分数:2.00)A.全局变量B.局部变量C.静态变量D.寄存器变量14.已知数据表 A 中每个元素距其最终位置不远,为节省时间,应采用的算法是(分数:2.00)A.堆排序B.直接插入排序C.快速排序D.直接选择排序15.有如下程序: #includeiostream.h long fib(int n) if(n2) return(fib(n1) fib(n2) ) ; else return(2) ; void main( ) cout nb(3) ; 该程序的输出结果是(分数:2.00)A.2B.4C.6D.816.C语言是以哪

6、种语言为基础逐渐发展演变而成的一种程序设计语言?(分数:2.00)A.ASPB.CC.VBD.Java17.有以下程序: #includestring.h #includeiostream.h void main( ) char * p“abcde/0fghjik/0“; cout strlen(p) ; 程序运行后的输出结果是(分数:2.00)A.12B.15C.6D.518.下列程序的输出结果是 #includeiostream.h int b2; int func(int * a) b * a; return(b) ; void main( ) int a2, res2; resfunc

7、( cout res;(分数:2.00)A.4B.6C.8D.1019.执行下列程序段,结果是 #includeiostream.h void main( ) int x40; char yC; int n; n(x cout n;(分数:2.00)A.0B.1C.2D.320.关于 this 指针的说明不正确的是(分数:2.00)A.不能在程序中修改 this 指针B.this 指针可以给其他指针赋值,但不能修改 this 指针C.静态成员函数中没有 this 指针D.this 指针可以被赋值21.下面程序的输出结果是 #includeiostream.h class A public: A

8、( ) cout “construtA“ endl; VirtualA( ) cout “destructA“ endl; class B: public A ; class C:public A ; class D:public B,public C ; void main( ) D d;(分数:2.00)A.constructAB.constructAC.constructAD.constructA destructA constructA constructA constructA destructA constructA constrnctA destructA destructA c

9、onstructA destructA destructA destructA destrctA destructA destructA22.在位运算中,操作数每左移一位,其结果相当于(分数:2.00)A.操作数乘以 2B.操作数除以 2C.操作数除以 4D.操作数乘以 423.能正确表示逻辑关系:“a10 或 a0”的 C语言表达式是(分数:2.00)A.a10 or a0B.a0 | a10C.a10 void main( ) int a,b,c; sub(10,5, sub(7,a, sub(a,b, cout a “,“ b “,“ C endl;(分数:2.00)A.5,2,3B.5

10、,12,7C.5,12,17D.5,2,725.下列工具中为需求分析常用工具的是(分数:2.00)A.PADB.PFDC.N-SD.DFD26.下列程序的运行结果是 #inClUdeiostream.h class Location private: int X,Y; pubhc: void init(int0,int0) ; void valueX(int val) Xval; int valueX( ) retum X; void valueY(int val) Yval; int valueY( ) retum Y;void Location: :init(int initX,int i

11、nitY) XinitX; YinitY; Void main( ) Location A,B; A. init( ) ; A. valueX(5) ; cout A. valueX( ) endl A. valueY( ) endl; B. init(6,2) ; B. valueY(4) ; cout B. valueX( ) endl B. valueY( ) endl;(分数:2.00)A.5B.0C.5D.0 0 0 0 0 6 6 6 6 4 4 2 227.关于虚函数,下面说的正确的是(分数:2.00)A.若在重定义虚函数时使用了 virtual,则该重定义函数还是虚函数B.虚函

12、数不能声明为友元C.子类必须重定义父类的虚函数D.虚函数不能是 static 的28.下列不属于结构化分析的常用工具的是(分数:2.00)A.数据流图B.数据字典C.判定树D.PAD 图29.对建立良好的程序设计风格,下面描述正确的是(分数:2.00)A.程序应简单、清晰、可读性好B.符号名的命名只要符合语法C.充分考虑程序的执行效率D.程序的注释可有可无30.要想使 23.78965421 的输出为 23.7887,应用的语句是(分数:2.00)A.cout 23.78965421;B.cout fixed 23.78965421;C.cout 23.789654210.001;D.cout

13、 fixed 23.789654210.001;31.有以下程序: #includeiostream.h Float fun(int x, int y) return(xy) ; void main( ) int a2,b5,c8; cout fun(int) fun(ac, b) ,ac) ; 程序运行后的输出结果是(分数:2.00)A.编译出错B.9C.21D.9.032.在软件生产过程中,需求信息的给出是(分数:2.00)A.程序员B.项目管理者C.软件分析设计人员D.软件用户33.以下程序的输出结果是 #includeiostream.h void main( ) int i, j,

14、x0; for(i0;i2;i) x; for(j0;j3;j) if(j%2) continue; x; x; cout “X“ x;(分数:2.00)A.x4B.x8C.x6D.x1234.NULL 是指(分数:2.00)A.0B.空格C.未知的值或无任何值D.空字符串35.在 C语言中,封装是借助于什么达到的?(分数:2.00)A.结构B.类C.数组D.函数二、B填空题/B(总题数:13,分数:26.00)36.冒泡排序算法在最好的情况下的元素交换次数为U /U。(分数:2.00)填空项 1:_37.在最坏情况下,堆排序需要比较的次数为U /U。(分数:2.00)填空项 1:_38.若串

15、 s“MathTypes“,则其子串的数目是U /U。(分数:2.00)填空项 1:_39.软件开发环境是全面支持软件开发全过程的U /U集合。(分数:2.00)填空项 1:_40.关系数据库的关系演算语言是以U /U为基础的 DML 语言。(分数:2.00)填空项 1:_41.C语言中关键字运算符有 new、delete 和U /U。(分数:2.00)填空项 1:_42.将以下程序写成三日运算表达式是U /U。 if(ab) maxa; else maxb;(分数:2.00)填空项 1:_43.以下程序的输出结果是U /U。 #includeiostream.h class object p

16、rivate: int val; public: object( ) ; object(int i) ; object( ) ; object: :object( ) val0; cout “Default constructor for object“ endl; object: :object(int i) vali; cout “Constructor for object“ val endl; object: :object( ) cout “Destructor for object“ val endl; class container private: object one; ob

17、ject two; int data; public: container( ) ; container(int i,int j,int k) ; container( ) ; container: :container( ) data0; cout “Default constructor for container“ endl; container: :container(int i,int j,int k) :two(i) ,one(j) datak; cout “Constructor for container“ endl; container: :container( ) cout

18、 “Destructor for container“ endl; void main( ) container anObj(5,6,10) ;(分数:2.00)填空项 1:_44.下面程序的功能是将字符数组 a 中下标值为偶数的元素从小到大排列,其他元素不变,请填空。 #includeiostream.h #includestring.h void main( ) char a “clanguage“, t; int I ,j, k; kstrlen(a) ; for(i0;ik2;i2) for(ji2;jk;U 9 /U) if(U 10 /U) tai ;ai aj ;aj t; co

19、ut a; cout endl;(分数:2.00)填空项 1:_45.静态成员函数可以直接访问类的U 11 /U成员,不能直接访问类的U 12 /U成员。(分数:2.00)填空项 1:_46.请定义一个函数名为 A,返回值为 int,没有参数的纯虚函数的定义是U /U。(分数:2.00)填空项 1:_47.表达式 x. operator(y. operator(0) ) 还可以写成U /U。(分数:2.00)填空项 1:_48.假设 fin 是一个文件流对象,则关闭文件的语句是U /U。(分数:2.00)填空项 1:_二级 C+笔试 326 答案解析(总分:96.00,做题时间:90 分钟)一

20、、B选择题/B(总题数:35,分数:70.00)1.若有说明语句: char a “It is mine“; char * p“It is mine“; 则以下不正确的叙述是(分数:2.00)A.a1 表示的是字符 t 的地址B.p 指向另外的字符串时,字符串的长度不受限制C.p 变量中存放的地址值可以改变D.a 中只能存放 10 个字符 解析:解析 本题考查字符串数组和指针的引用方式。在 C语言中,系统在每个字符串或数组的最后自动加入一个字符/0,作为字符的结束标志,在本题中,char a “It is mine”;所表示的 a字符串实际含有 11 个字符。2.有如下程序: #inClude

21、iostream.h #dehne N 2 #dehne M N1 #denne NUM 2 * M1 Void main( ) int i; for(i1;iNUM;i) cout i; 该程序中的 fof 循环执行的次数是(分数:2.00)A.5B.6 C.7D.8解析:解析 这是一种简单的情况:不带参数的宏。关键要注意在对 2 * M1 进行宏替换时,要将宏名M 原样替换,得到 NUM 的形式为 2 * N11(千万不要随意给 N1 加上小括号,使 NUM 变为 2 * (N 1) 1,这就是宏名和变量名之间的区别) 。3.非空的循环单链表 head 的尾节点(由 p 所指向) ,满足(

22、分数:2.00)A.p-nextNULLB.pNULLC.p-nexthead D.phead解析:解析 循环链表就是将链表的最后一个节点指向链表头节点(或第一个节点) ,即 p- nexthead。4.下列程序是用来判断数组中特定元素的位置所在,则输出结果为 #includeconio.h #includeiostream.h int fun(int * s,int t,int * k) int i; *k0; for(i0;it;i) if(s * k si ) *ki; retum s * k ; void main( ) int a10 876,675,896,101,301,401,

23、980,431,451,777,k; fun(a,10, cout k , ak ;(分数:2.00)A.7,431B.6C.980D.6,980 解析:解析 本题中直接使用指针变量 k,但在使用时要注意对 k 的指针运算,此外,一开始应认为 * k 的值为数组中的某一下标值,即 * k0。5.设变量 a 是 int 型,f 是 double 型,i 是 float 型,则表达式 10ai * f 值的数据类型是(分数:2.00)A.intB.floatC.double D.不确定解析:解析 根据混合运算规则,如果有一个数据是 double 型,则其他数据类型先转化为 double 型,运算的

24、结果最终也是 double 型。为保证精度的不丢失,表达式的数据类型是变量和常量中精确度最高的变量类型。6.面向对象程序设计思想的主要特征中不包括(分数:2.00)A.继承性B.功能分解,逐步求精 C.封装性和信息隐藏D.多态性解析:解析 面向对象程序设计的主要特征是继承性、封装性和信息隐藏、多态性。7.数据库的故障恢复一般是由(分数:2.00)A.数据流图完成的B.数据字典完成的C.DBA 完成的 D.PAD 图完成的解析:解析 一旦数据库中的数据遭受破坏,需要及时进行恢复,RDBMS 一般都提供此种功能,并由 DBA 负责执行故障恢复功能。8.下列叙述中正确的是(分数:2.00)A.线性表

25、是线性结构 B.栈与队列是非线性结构C.线性链表是非线性结构D.二叉树是线性结构解析:解析 线性表是一种线性结构,数据元素在线性表中的位置只取决于它们自己的序号,即数据元素之间的相对位置是线性的;栈、队列、线性链表实际上也是线性表,故也是线性结构;树是一种简单的非线性结构。9.有以下语句,则对 a 数组元素的引用不正确的是(0i9) int a10 0,1,2,3,4,5,6,7,8,9, * pa;(分数:2.00)A.apaB.* ( cin a b; ka; if(ab) ka%b; else kb%a; cout k endl;(分数:2.00)A.5B.3C.2 D.0解析:解析 本

26、题考查简单的 ifelse 语句。先执行条件 if(ab) ,显然不成立,则执行 else 语句。12.下列说法中,不属于数据模型所描述的内容的是(分数:2.00)A.数据结构B.数据操作C.数据查询 D.数据约束解析:解析 数据模型所描述的内容有 3 个部分,它们是数据结构、数据操作和数据约束。其中,数据模型中的数据结构主要描述数据的类型、内容、性质,以及数据库的联系等;数据操作主要是描述在相应数据结构上的操作类型与操作方式。13.所有在函数中定义的变量,连同形式参数,都属于(分数:2.00)A.全局变量B.局部变量 C.静态变量D.寄存器变量解析:解析 C语言函数中定义的变量都是属于这个函

27、数的局部变量。14.已知数据表 A 中每个元素距其最终位置不远,为节省时间,应采用的算法是(分数:2.00)A.堆排序B.直接插入排序 C.快速排序D.直接选择排序解析:解析 当数据表 A 中每个元素距其最终位置不远,说明数据表 A 按关键字值基本有序,在待排序序列基本有序的情况下,采用插入排序所用时间最少,故答案为选项 B) 。15.有如下程序: #includeiostream.h long fib(int n) if(n2) return(fib(n1) fib(n2) ) ; else return(2) ; void main( ) cout nb(3) ; 该程序的输出结果是(分数

28、:2.00)A.2B.4 C.6D.8解析:解析 fib(3) fib(2) fib(1) ,而 fib (2) 的返回值为 2,fib(1) 的返回值也为 2,故输出的 fib (3) 的值为 4。16.C语言是以哪种语言为基础逐渐发展演变而成的一种程序设计语言?(分数:2.00)A.ASPB.C C.VBD.Java解析:解析 C语言是对 C 语言进行了扩充,继承了它的语法,并增加了面向对象的设计方法。17.有以下程序: #includestring.h #includeiostream.h void main( ) char * p“abcde/0fghjik/0“; cout strl

29、en(p) ; 程序运行后的输出结果是(分数:2.00)A.12B.15C.6D.5 解析:解析 C语言规定了一个字符串结束标志,以字符/0代表,在遇到/0时,表示字符串结束,由它前面的字符组成字符串。18.下列程序的输出结果是 #includeiostream.h int b2; int func(int * a) b * a; return(b) ; void main( ) int a2, res2; resfunc( cout res;(分数:2.00)A.4B.6 C.8D.10解析:解析 在函数体语句 b * a;中的*是指针运算符(也称间接访问运算符) , * a 就是 main

30、 函数中 a 的值。19.执行下列程序段,结果是 #includeiostream.h void main( ) int x40; char yC; int n; n(x cout n;(分数:2.00)A.0B.1 C.2D.3解析:解析 按位与运算符“ VirtualA( ) cout “destructA“ endl; class B: public A ; class C:public A ; class D:public B,public C ; void main( ) D d;(分数:2.00)A.constructAB.constructA C.constructAD.cons

31、tructA destructA constructA constructA constructA destructA constructA constrnctA destructA destructA constructA destructA destructA destructA destrctA destructA destructA解析:解析 类 D 继承了类 C 和类 B,所以在构造的时候分别构造类 B 和类 C。22.在位运算中,操作数每左移一位,其结果相当于(分数:2.00)A.操作数乘以 2 B.操作数除以 2C.操作数除以 4D.操作数乘以 4解析:解析 左移运算符“ ”是双

32、目运算符。其功能把“ ”左边的运算数的各二进位全部左移若干位,由“ ”右边的数指定移动的位数,高位丢弃,低位补 0。左移 1 位,相当于该数乘以 2。23.能正确表示逻辑关系:“a10 或 a0”的 C语言表达式是(分数:2.00)A.a10 or a0B.a0 | a10C.a10 void main( ) int a,b,c; sub(10,5, sub(7,a, sub(a,b, cout a “,“ b “,“ C endl;(分数:2.00)A.5,2,3B.5,12,7 C.5,12,17D.5,2,7解析:解析 在 C语言中,调用函数不可能改变实参指针变量的值,但可以改变实参指针

33、变量所指变量的值。了解了实参指针变量的改变情况,本题只剩下简单的“加减法”了。25.下列工具中为需求分析常用工具的是(分数:2.00)A.PADB.PFDC.N-SD.DFD 解析:解析 PAD、PFD、N-S 和 HIPO 为详细设计过程中的过程设计工具中的图形工具。DFD、DD (数据字典) 、判定表和判定树是需求分析中的结构化分析工具。26.下列程序的运行结果是 #inClUdeiostream.h class Location private: int X,Y; pubhc: void init(int0,int0) ; void valueX(int val) Xval; int v

34、alueX( ) retum X; void valueY(int val) Yval; int valueY( ) retum Y;void Location: :init(int initX,int initY) XinitX; YinitY; Void main( ) Location A,B; A. init( ) ; A. valueX(5) ; cout A. valueX( ) endl A. valueY( ) endl; B. init(6,2) ; B. valueY(4) ; cout B. valueX( ) endl B. valueY( ) endl;(分数:2.0

35、0)A.5 B.0C.5D.0 0 0 0 0 6 6 6 6 4 4 2 2解析:解析 本题中有成员函数和它的重载函数,要注意它们的不同,在本题中先调用了 init 函数,初始化了 X、Y,都为 0,valueX(5) ;又将 X 变为 5,所以输出 5 和 0,然后初始化 init(6,2) ,接着又valueY(4) ;将 X、Y 设为 6 和 4,所以输出 6 和 4。27.关于虚函数,下面说的正确的是(分数:2.00)A.若在重定义虚函数时使用了 virtual,则该重定义函数还是虚函数B.虚函数不能声明为友元C.子类必须重定义父类的虚函数D.虚函数不能是 static 的 解析:解

36、析 虚函数一定不能定义为静态的。虚函数可以声明为友元,子类也不是必须重定义父类的虚函数,若在重定义虚函数时使用了 virtual,则该重定义函数不一定还是虚函数。28.下列不属于结构化分析的常用工具的是(分数:2.00)A.数据流图B.数据字典C.判定树D.PAD 图 解析:解析 结构化分析的常用工具有数据流图、数据字典、判定树和判定表。而 PAD 图是常见的过程设计工具中的图形设计工具。29.对建立良好的程序设计风格,下面描述正确的是(分数:2.00)A.程序应简单、清晰、可读性好 B.符号名的命名只要符合语法C.充分考虑程序的执行效率D.程序的注释可有可无解析:解析 程序设计应该简单易懂,

37、语句构造应该简单直接,不应该为提高效率而把语句复杂化。30.要想使 23.78965421 的输出为 23.7887,应用的语句是(分数:2.00)A.cout 23.78965421;B.cout fixed 23.78965421;C.cout 23.789654210.001; D.cout fixed 23.789654210.001;解析:解析 C语言中默认小数的输出位一共是 6 位,fixed 的意义是在小数点后保留 6 位。31.有以下程序: #includeiostream.h Float fun(int x, int y) return(xy) ; void main( )

38、int a2,b5,c8; cout fun(int) fun(ac, b) ,ac) ; 程序运行后的输出结果是(分数:2.00)A.编译出错B.9 C.21D.9.0解析:解析 本题的运算过程是 fun(int) fun (ac, b) ,ac) ,fun(int) fun(10,5) ,28) ,fun (int) 15.000000,6) ,fun(15,6) 9。32.在软件生产过程中,需求信息的给出是(分数:2.00)A.程序员B.项目管理者C.软件分析设计人员D.软件用户 解析:解析 软件需求是指用户对目标软件系统在功能、行为、性能、设计约束等方面的期望。33.以下程序的输出结果

39、是 #includeiostream.h void main( ) int i, j, x0; for(i0;i2;i) x; for(j0;j3;j) if(j%2) continue; x; x; cout “X“ x;(分数:2.00)A.x4B.x8 C.x6D.x12解析:解析 该题是一个 for 循环嵌套语句。第一层 for 循环循环 2 次,第二层循环 3 次,但当 j 等于 0 和 1 时,将执行 continue 语句,不执行 x运算,所以每次执行完内循环后,x 的增量为 1。最后一个 x运算将每次累加起来就是 x 的值。34.NULL 是指(分数:2.00)A.0B.空格C

40、.未知的值或无任何值 D.空字符串解析:解析 此题属于记忆性的题目,NULL 是指未知的值或无任何值。35.在 C语言中,封装是借助于什么达到的?(分数:2.00)A.结构B.类 C.数组D.函数解析:解析 C基本的性质就是它的封装性,而封装性主要是靠类来实现的。二、B填空题/B(总题数:13,分数:26.00)36.冒泡排序算法在最好的情况下的元素交换次数为U /U。(分数:2.00)填空项 1:_ (正确答案:0)解析:解析 根据冒泡排序算法思想可知,若待排序的初始序列为“正序”序列,则只需进行一趟排序,在排序过程中进行 n1 次关键字间的比较,且不移动和交换记录,这种情况是冒泡排序的最好

41、情况,故冒泡排序算法在最好的情况下的元素交换次数为 0。37.在最坏情况下,堆排序需要比较的次数为U /U。(分数:2.00)填空项 1:_ (正确答案:O(nlog 2n))解析:解析 在最坏情况下,冒泡排序所需要的比较次数为 n(n1) /2;简单插入排序所需要的比较次数为n(n1) /2;希尔排序所需要的比较次数为 O(n1.5) ;堆排序所需要的比较次数为 O(nlog2n) 。38.若串 s“MathTypes“,则其子串的数目是U /U。(分数:2.00)填空项 1:_ (正确答案:46)解析:解析 串 s 中共有 9 个字符,由于串中字符各不相同,则其子串中有 0 个字符的 1

42、个(空串) ,1个字符的 9 个,2 个字符的 8 个,3 个字符的 7 个,4 个字符的 6 个,5 个字符的 5 个,6 个字符的 4 个,7 个字符的 3 个,8 个字符的 2 个,9 个字符的 1 个,共有 1234567 89146。39.软件开发环境是全面支持软件开发全过程的U /U集合。(分数:2.00)填空项 1:_ (正确答案:软件工具)解析:40.关系数据库的关系演算语言是以U /U为基础的 DML 语言。(分数:2.00)填空项 1:_ (正确答案:谓词演算)解析:解析 关系数据库中的关系演算包括元组关系演算和域关系演算。二者都是由原子公式组成的公式。而这些关系演算都是以

43、数理逻辑中的谓词演算为基础的。41.C语言中关键字运算符有 new、delete 和U /U。(分数:2.00)填空项 1:_ (正确答案:sizeof)解析:解析 C语言中关键字运算符有 3 个,分别为 new、delete 和 sizeof。new 是申请内存,delete 是释放内存,sizeof 是求字节数。42.将以下程序写成三日运算表达式是U /U。 if(ab) maxa; else maxb;(分数:2.00)填空项 1:_ (正确答案:max(ab) ?a: b;)解析:解析 条件运算符要求有 3 个操作对象;称三目 (元) 运算符,它是 C语言中唯一的一个三日运算符。条件表

44、达式的一般形式为:表达式 1?表达式 2:表达式 3。所以我们可以写成(ab) ?a: b,它是一个“条件表达式”。执行顺序是如果(ab) 条件为真,则条件表达式取值 a 作为整个表达式的值,否则取值 b 作为整个表达式的值。43.以下程序的输出结果是U /U。 #includeiostream.h class object private: int val; public: object( ) ; object(int i) ; object( ) ; object: :object( ) val0; cout “Default constructor for object“ endl; object: :object(int i) vali; cout “Constructor for object“ val endl; object

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