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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

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

1、二级 C+笔试 9及答案解析(总分:104.00,做题时间:90 分钟)一、B选择题/B(总题数:37,分数:74.00)1.关于抽象类下面说法正确的是(分数:2.00)A.抽象类就是其中有函数定义但没有实现的类B.抽象类是可以被实例化的C.派生类不能成为抽象类D.抽象类的子类必须实现父类中的纯虚函数2.在软件工程中,白箱测试法可用于测试程序的内部结构。此方法将程序看做是(分数:2.00)A.路径的集合B.循环的集合C.目标的集合D.地址的集合3.对于下面的程序,说法正确的是 #includeiostreamh void main( ) int x=3,y=4,z=2; if(X=y+z) c

2、out “x=y+Z“; else cout“x!=y+Z“;(分数:2.00)A.不能通过编译B.输出 6C.输出 x! =y+zD.输出 x=y+z5.关于友元的概念错误的是(分数:2.00)A.友元函数没有 this指针B.调用友元函数时必须在它的实参中给出要访问的对象C.一个类的成员函数也可以作为另一个类的友元函数D.只能在类的公有段声明友元6.软件开发的结构化生命周期方法将软件生命周期划分成(分数:2.00)A.定义、开发、运行维护B.设计阶段、编程阶段、测试阶段C.总体设计、详细设计、编程调试D.需求分析、功能定义、系统设计7.下面程序输出的结果是 #includeiostream

3、h void main( ) int i; int a33=1,2,3,4,5,6,7,8,9; for(i=0;i3;i+) coutaii“ “;(分数:2.00)A.1 5 9B.7 5 3C.3 5 7D.5 9 18.下列程序的运行结果为 #includeiostreamh class Location protected: int X,Y; publiC: void SeX(int myx)X=myx; void SetY(int myy)Y=myy; void showxy( ) cout“X=“ X“ “ “Y“= Y endl; ; Class Rectangle :publ

4、ic Location private: int H,W; public: void SetH(int myh)H=myh; void SetW(int myw) W=myw; void show( ) cout “X=“X“ “Y=“ Y“ “H=“ H“ “ “W=“ W endl; ; void main( ) Rectangle r1; r1SetX(3); r1SetY(5); r1SetH(4); r1SetW(6); r1showxy( ); r1. show( );(分数:2.00)A.X=3 Y=5 X=3 Y=5 H=4 W=6B.X=3 Y=5 X=3 Y=5 H=3 W

5、=6C.X=3 Y=5 X=3 Y=4 H=4 W=6D.X=3 Y=5 X=3 Y=3 H=4 W=69.栈底至栈顶依次存放元素 A、B、C、D,在第五个元素 E入栈前,栈中元素可以出栈,则出栈序列可能是(分数:2.00)A.ABCEDB.DCBEAC.DBCEAD.CDABE10.以下都是 C+语言标识符的是(分数:2.00)A.dsfa,df4,f$B.huhj,a,k2C.3k,h,j_9D._ok,jk,k811.实体是信息世界中广泛使用的一个术语,它用于表示(分数:2.00)A.有生命的事物B.无生命的事物C.实际存在的事物D.一切事物12.派生类继承基类的方式有(分数:2.00)

6、A.publicB.privateC.protectedD.以上都对13.以下哪个基类中的成员函数表示纯虚函数?(分数:2.00)A.virtual void vf(inB.void vf(in=0C.virtual void vf(=0)D.virtual void yf(in 14.下面程序的结果是 #includeiostreamh class test private: int num; public: test( ); int getint( ) return num; test( ); test:test( ) num=0; test:test( ) cout“Destructor

7、 is active“endl; void main( ) test x3; cout“Exiting main“endl;(分数:2.00)A.Exiting main Destructor is active Destructor is active Destructor is activeB.Exiting main Destructor is active Destructoris activeC.Exiting main Destructoris activeD.Exiting main15.下列程序的输出结果是 #includeiostreamh void main( ) int

8、a3,i,j,k=2; for(i=0;i3;i+)ai=i; for(i=0;ik;i+) for(j=0;jk;j+) aj=ai; couta2;(分数:2.00)A.2B.3C.1D.016.有以下程序 #includeiostreamh void main( ) int a=5,b=0,c=0; if(a=b+c) cout“* * *“ endl; else cout“$“endl; 下列选项叙述正确的是(分数:2.00)A.有语法错不能通过编译B.可以通过编译但不能通过连接C.输出* * *D.输出 $ $ $17.模块独立性是软件模块化所提出的要求,衡量模块独立性的度量标准则是

9、模块的(分数:2.00)A.抽象和信息隐蔽B.局部化和封装化C.内聚性和耦合性D.激活机制和控制方法18.数据库设计包括两个方面的设计内容,它们是(分数:2.00)A.概念设计和逻辑设计B.模式设计和内模式设计C.内模式设计和物理设计D.结构特性设计和行为特性设计A.B.C.D.20.在数据管理技术发展过程中,文件系统与数据库系统的主要区别是数据库系统具有(分数:2.00)A.特定的数据模型B.数据无冗余C.数据可共享D.专门的数据管理软件21.如果表达式-X+y 中,-是作为成员函数重载的,+是作为成员函数重载的,则该表达式还可为(分数:2.00)A.operator+(operator-(

10、0)B.y,operator+(operator-( )C.operator+(operator-t(x,0)D.operator+(operator- -t( )22.在结构化程序设计思想提出之前,在程序设计中曾强调程序的效率。与程序的效率相比,人们更重视程序的(分数:2.00)A.安全性B.一致性C.可理解性D.合理性23.A解析:本题是一道简单的成员函数应用题,考生只要按着主函数中生成的类 Rectangle的对象 r1进行成员函数的调用即可得到答案。(分数:2.00)A.B.C.D.24.设以下变量均为 int类型,则值不等于 7的表达式是(分数:2.00)A.(x=y=6,x+y,X

11、+1)B.(x=y=6,x+y,y+1)C.(x=6,x+1,y=6,x+D.(y=6,y+1,x+y,x+1)25.有以下程序 #includeiostreamh void ss(char*s,char t) while(*s) if(*S=t)*s=t-a+A; s+; void main( ) char strl100=“abcddfefdbd“,c=d: ss(strl,c) ;coutstrl; 程序运行后的输出结果是(分数:2.00)A.ABCDDEfEBDB.abcDDfefDbDC.abcAAfefALbAD.Abcddfefdbd26.n个顶点的强连通图的边数至少有(分数:2

12、.00)A.n-1B.n(n-1)C.nD.n+127.若二维数组 a有 m列,则计算任一元素 a i j 在数组中相对位置的公式为(假设 a0)0位于数组的第一个位置上)(分数:2.00)A.i*m+jB.j*m+iC.i*m+j-1D.i*m+j+128.下面叙述不正确的是(分数:2.00)A.派生类一般都用公有派生B.对基类成员的访问必须是无两义性的C.赋值兼容规则也适用于多重继承的组合D.基类的公有成员在派生类中仍然是公有的29.与 y=(x0? 1:x0? -1:0);的功能相同的 if语句是(分数:2.00)A.if(x0)y=1 else if(x0)y=-1; else y=O

13、;B.if( if(x0)y=1; else if(x0)y=-1;C.y=-1; if( if(x0)y=1; else if(x=0)y=0; else y=-1;D.y=0; if(x=0) if(x0)y=1; else y=-1;30.while和 do-while循环的主要区别是(分数:2.00)A.do-while的循环体至少无条件执行一次B.while的循环控制条件比 do-while的循环控制条件更严格C.do-while允许从外部转到循环体内D.do-while的循环体不能是复合语句31.C+语言中用于定义类的关键字是(分数:2.00)A.classB.structC.de

14、faultD.sizeof32.已知各变量的定义如下 int i=8,k,a,b; unsigned long w=5; double x=142,y=52; 则以下符合 C+语言语法的表达式是(分数:2.00)A.a+=a-=(b=4) * (a=3)B.a=a * 3+2C.x(-3)D.y=float i33.下面程序应能对两个整型变量的值进行交换。以下正确的说法是 #includeiostreamh void swap(int p,int q) int t; t=p; p=q; q=t; void main( ) int a=10,b=20; couta“ “b; swap(i1;i-

15、) for(j=0;ji;j+) (分数:2.00)A.20B.261C.15D.25二、B填空题/B(总题数:15,分数:30.00)38.常用的黑箱测试有等价分类法、 【1】 、因果图法和错误推测法 4种。(分数:2.00)填空项 1:_39.测试的目的是暴露错误,评价程序的可靠性;而 【2】 的目的是发现错误的位置并改正错误。(分数:2.00)填空项 1:_40.软件维护活动包括以下几类:改正性维护、适应性维护、 【3】 维护和预防性维护。(分数:2.00)填空项 1:_41.在面向对象的设计中,用来请求对象执行某一处理或回答某些信息的要求称为 【4】 。(分数:2.00)填空项 1:_

16、42.关键字 ASC和 DESC分别表示 【5】 的含义。(分数:2.00)填空项 1:_43.C+语言中表示双精度浮点数的关键字是 【6】 。(分数:2.00)填空项 1:_44.执行下列语句后,c3 中的值为 【7】 int c1=1,c2=2,c3;c3=10/c2 * c1;(分数:2.00)填空项 1:_45.若从键盘输入 70,则以下程序输出的结果是U 【8】 /U。 #includeiostreamh void main( ) int a;cina; if(a50) couta; if(a40)couta; if(a30)couta(分数:2.00)填空项 1:_46.以下程序的

17、输出结果是U 【9】 /U。 #includeiostreamh void main( ) char s =“abcdef“;s3=/0; coutsendl;(分数:2.00)填空项 1:_47.以下程序运行后的输出结果是U 【10】 /U。 #includeiostreamh void fun(int x,int y) x=x+y;y=x-y;x=x-y; cout x “,“ y “ ,“; void main( ) int x=2,y=3;fun(x,y); cout x “,“ y endl;(分数:2.00)填空项 1:_48.常数据成员和静态数据成员在使用前共同的要求是要进行 【

18、11】 。(分数:2.00)填空项 1:_49.类 test的析构函数是 【12】 。(分数:2.00)填空项 1:_50.表达式 xoperator+(yoperator+(0)还可以写成 【13】 。(分数:2.00)填空项 1:_51.要采用“cin,tout”进行输入输出时,必须包含的头文件是 【14】 。(分数:2.00)填空项 1:_52.构造函数是和 【15】 同名的函数。(分数:2.00)填空项 1:_二级 C+笔试 9答案解析(总分:104.00,做题时间:90 分钟)一、B选择题/B(总题数:37,分数:74.00)1.关于抽象类下面说法正确的是(分数:2.00)A.抽象类

19、就是其中有函数定义但没有实现的类B.抽象类是可以被实例化的C.派生类不能成为抽象类D.抽象类的子类必须实现父类中的纯虚函数 解析:解析:C+语言中的抽象类就是类中至少有一个纯虚函数的类,抽象类不能被实例化,继承抽象类的类必须实现抽象类中的纯虚函数。2.在软件工程中,白箱测试法可用于测试程序的内部结构。此方法将程序看做是(分数:2.00)A.路径的集合 B.循环的集合C.目标的集合D.地址的集合解析:解析:软件的白盒测试方法是把测试对象看做一个打开的盒子,它允许测试人员利用程序内部的逻辑结构及有关信息,设计或选择测试用例,对程序所有逻辑路径进行测试。3.对于下面的程序,说法正确的是 #inclu

20、deiostreamh void main( ) int x=3,y=4,z=2; if(X=y+z) cout “x=y+Z“; else cout“x!=y+Z“;(分数:2.00)A.不能通过编译B.输出 6C.输出 x! =y+zD.输出 x=y+z 解析:解析:解答本题关键是要理解 if后面的括号里的是赋值语句而并非关系判断,赋完值后 x不等于零,C+语言里非零都作真处理,所以输出结果为“x=y+z”,故答案为选项 D),注意“=”与“=”的区别。解析:解析:C+语言中打开文件有两种方式ifstream fin(“testdar“,)if stream fin;finopen(“te

21、stdat“,);。5.关于友元的概念错误的是(分数:2.00)A.友元函数没有 this指针B.调用友元函数时必须在它的实参中给出要访问的对象C.一个类的成员函数也可以作为另一个类的友元函数D.只能在类的公有段声明友元 解析:解析:C+中的友元可以在一个类中的任何位置声明,不一定必须在公有段,友元没有自己的 this指针,调用友元函数时必须在它的实参中给出要访问的对象,并且一个类的成员函数是可以作为另一个类的友元函数的。6.软件开发的结构化生命周期方法将软件生命周期划分成(分数:2.00)A.定义、开发、运行维护 B.设计阶段、编程阶段、测试阶段C.总体设计、详细设计、编程调试D.需求分析、

22、功能定义、系统设计解析:解析:通常,将软件产品从提出、实现、使用维护到停止使用退役的过程称为软件生命周期。它可以分为软件定义、软件开发及软件运行维护 3个阶段。7.下面程序输出的结果是 #includeiostreamh void main( ) int i; int a33=1,2,3,4,5,6,7,8,9; for(i=0;i3;i+) coutaii“ “;(分数:2.00)A.1 5 9 B.7 5 3C.3 5 7D.5 9 1解析:解析:首先,当 i=0时,数组中的位置是 a00=1,当然,如果用排除法的话,就不用考虑后面的循环了,因为在 4个选项中,第 1个数为 1的选项只有

23、A)。本题执行第 2次循环时,i 的值为 1,则cout函数中的数组指向为 a11=5,依次循环,可求出答案。8.下列程序的运行结果为 #includeiostreamh class Location protected: int X,Y; publiC: void SeX(int myx)X=myx; void SetY(int myy)Y=myy; void showxy( ) cout“X=“ X“ “ “Y“= Y endl; ; Class Rectangle :public Location private: int H,W; public: void SetH(int myh)H

24、=myh; void SetW(int myw) W=myw; void show( ) cout “X=“X“ “Y=“ Y“ “H=“ H“ “ “W=“ W endl; ; void main( ) Rectangle r1; r1SetX(3); r1SetY(5); r1SetH(4); r1SetW(6); r1showxy( ); r1. show( );(分数:2.00)A.X=3 Y=5 X=3 Y=5 H=4 W=6B.X=3 Y=5 X=3 Y=5 H=3 W=6 C.X=3 Y=5 X=3 Y=4 H=4 W=6D.X=3 Y=5 X=3 Y=3 H=4 W=6解析:9

25、.栈底至栈顶依次存放元素 A、B、C、D,在第五个元素 E入栈前,栈中元素可以出栈,则出栈序列可能是(分数:2.00)A.ABCEDB.DCBEA C.DBCEAD.CDABE解析:解析:栈操作原则上“后进先出”,栈底至栈顶依次存放元素 A、B、C、D,则表明这 4个元素中D是最后进栈,B、C 处于中间,A 最早进栈。所以出栈时一定是先出 D,再出 C,最后出 A。10.以下都是 C+语言标识符的是(分数:2.00)A.dsfa,df4,f$B.huhj,a,k2C.3k,h,j_9D._ok,jk,k8 解析:解析:C+语言标识符只能由数字,字母和下划线组成,并且只能以字母和下划线为开头。1

26、1.实体是信息世界中广泛使用的一个术语,它用于表示(分数:2.00)A.有生命的事物B.无生命的事物C.实际存在的事物 D.一切事物解析:解析:实体是客观存在且可以相互区别的事物。实体可以是具体的对象,如一个学生,也可以是一个抽象的事件,如一次出门旅游等。因此,实体既可以是有生命的事物,也可以是无生命的事物,但它必须是客观存在的,而且可以相互区别。12.派生类继承基类的方式有(分数:2.00)A.publicB.privateC.protectedD.以上都对 解析:解析:派生类继承基类的方式有 3种:public,private 和 protected,常用的是 public。13.以下哪个

27、基类中的成员函数表示纯虚函数?(分数:2.00)A.virtual void vf(inB.void vf(in=0 C.virtual void vf(=0)D.virtual void yf(in 解析:解析:C+中纯虚函数的定义与虚函数的关键字一样,在函数末尾要加上“=0”。14.下面程序的结果是 #includeiostreamh class test private: int num; public: test( ); int getint( ) return num; test( ); test:test( ) num=0; test:test( ) cout“Destructor

28、 is active“endl; void main( ) test x3; cout“Exiting main“endl;(分数:2.00)A.Exiting main Destructor is active Destructor is active Destructor is active B.Exiting main Destructor is active Destructoris activeC.Exiting main Destructoris activeD.Exiting main解析:解析:C+语言中析构函数是在程序退出不用该类的对象时进行调用。15.下列程序的输出结果是

29、#includeiostreamh void main( ) int a3,i,j,k=2; for(i=0;i3;i+)ai=i; for(i=0;ik;i+) for(j=0;jk;j+) aj=ai; couta2;(分数:2.00)A.2 B.3C.1D.0解析:解析:本题里有三个 for循环,但要分清楚,第一个是单独的给三个元素赋值,赋完值后三个 a0=0,a1=1,a2=2;后面的两个 for是嵌套循环,对数组元素的赋值,但由于 k=2,初值已定 for里的条件是小于 k,所以不管怎么处理都影响不到 a 2,故答案为 2。16.有以下程序 #includeiostreamh voi

30、d main( ) int a=5,b=0,c=0; if(a=b+c) cout“* * *“ endl; else cout“$“endl; 下列选项叙述正确的是(分数:2.00)A.有语法错不能通过编译B.可以通过编译但不能通过连接C.输出* * *D.输出 $ $ $ 解析:解析:解答本题时,先判断 if语句,因为 a=b+c为零,则执行 else语句。17.模块独立性是软件模块化所提出的要求,衡量模块独立性的度量标准则是模块的(分数:2.00)A.抽象和信息隐蔽B.局部化和封装化C.内聚性和耦合性 D.激活机制和控制方法解析:解析:模块的独立程序是评价设计好坏的重要度量标准。衡量软件

31、的模块独立性使用耦合性和内聚性两个定性的度量标准。18.数据库设计包括两个方面的设计内容,它们是(分数:2.00)A.概念设计和逻辑设计 B.模式设计和内模式设计C.内模式设计和物理设计D.结构特性设计和行为特性设计解析:解析:数据库设计包括数据库概念设计和数据库逻辑设计两个方面的设计内容。A.B. C.D.解析:20.在数据管理技术发展过程中,文件系统与数据库系统的主要区别是数据库系统具有(分数:2.00)A.特定的数据模型 B.数据无冗余C.数据可共享D.专门的数据管理软件解析:解析:在文件系统中,相互独立的记录其内部结构的最简单形式是等长同格式记录的集合,易造成存储空间大量浪费,不方便使

32、用。而在数据库系统中,数据是结构化的,这种结构化要求在描述数据时不仅描述数据本身,还要描述数据间的关系,这正是通过采用特定的数据模型来实现的。21.如果表达式-X+y 中,-是作为成员函数重载的,+是作为成员函数重载的,则该表达式还可为(分数:2.00)A.operator+(operator-(0)B.y,operator+(operator-( ) C.operator+(operator-t(x,0)D.operator+(operator- -t( )解析:解析:C+语言中用成员函数重载-x 为:xoperator-( ),用成员函数重载 x+y为:xoperator+(y)。22.在

33、结构化程序设计思想提出之前,在程序设计中曾强调程序的效率。与程序的效率相比,人们更重视程序的(分数:2.00)A.安全性B.一致性C.可理解性 D.合理性解析:解析:结构化程序设计方法设计出的程序具有明显的优点。其一,程序易于理解、使用和维护;其二,提交了编程工作的效率,降低了软件开发成本。其中,人们更重视前者。23.A解析:本题是一道简单的成员函数应用题,考生只要按着主函数中生成的类 Rectangle的对象 r1进行成员函数的调用即可得到答案。(分数:2.00)A.B. C.D.解析:24.设以下变量均为 int类型,则值不等于 7的表达式是(分数:2.00)A.(x=y=6,x+y,X+

34、1)B.(x=y=6,x+y,y+1)C.(x=6,x+1,y=6,x+ D.(y=6,y+1,x+y,x+1)解析:解析:C+语言中逗号“,”也是一种运算符,称为逗号运算符。其功能是把两个表达式连接起来组成一个表达式,称为逗号表达式。其一般形式为:表达式 1,表达式 2,其求值过程是分别求两个表达式的值,并以表达式 2的值作为整个逗号表达式的值。逗号表达式的一般形式可以扩展为:表达式 1,表达式 2,表达式 3,表达式 n,它的值为表达式 n的值。25.有以下程序 #includeiostreamh void ss(char*s,char t) while(*s) if(*S=t)*s=t-

35、a+A; s+; void main( ) char strl100=“abcddfefdbd“,c=d: ss(strl,c) ;coutstrl; 程序运行后的输出结果是(分数:2.00)A.ABCDDEfEBDB.abcDDfefDbD C.abcAAfefALbAD.Abcddfefdbd解析:解析:在内存中,字符数据以 ASCII码存储,它的存储形式就与整数的存储形式相类似。C+语言使字符型数据和整型数据之间可以通用。也可以对字符数据进行算术运算,此时相当于对它们的 ASCII码进行算术运算,在本题中,s+相当于 s=s +1,即让 s指向数组中的下一个元素。26.n个顶点的强连通图

36、的边数至少有(分数:2.00)A.n-1B.n(n-1)C.n D.n+1解析:解析:在有向图中,若任意两个顶点都连通,则称该图是强连通图,这样的有向图的形状是环状,因而至少应有 n条边。27.若二维数组 a有 m列,则计算任一元素 a i j 在数组中相对位置的公式为(假设 a0)0位于数组的第一个位置上)(分数:2.00)A.i*m+j B.j*m+iC.i*m+j-1D.i*m+j+1解析:解析:oij元素之前有 i行元素(每行有 m个元素),在 aij的前面还有 j个元素,因此 aij之前共有 i * m+j个元素。28.下面叙述不正确的是(分数:2.00)A.派生类一般都用公有派生B

37、.对基类成员的访问必须是无两义性的C.赋值兼容规则也适用于多重继承的组合D.基类的公有成员在派生类中仍然是公有的 解析:解析:C+语言中如果基类的成员是公有的,它被继承后在子类中该成员可能是公有的,也可能不是,主要看继承的权限。29.与 y=(x0? 1:x0? -1:0);的功能相同的 if语句是(分数:2.00)A.if(x0)y=1 else if(x0)y=-1; else y=O; B.if( if(x0)y=1; else if(x0)y=-1;C.y=-1; if( if(x0)y=1; else if(x=0)y=0; else y=-1;D.y=0; if(x=0) if(x

38、0)y=1; else y=-1;解析:解析:条件运算符要求有三个操作对象,它是 c+语言中惟一的一个三目运算符。条件表达式的一般形式为:表达式 1?表达式 2:表达式 3,先求解表达式 1,若为非 0(真)则求解表达式 2,此时表达式2的值就作为整个条件表达式的值。若表达式 1的值为 0(假),则求解表达式 3,表达式 3的值就是整个条件表达式的值。本题中用了两次三目运算符。30.while和 do-while循环的主要区别是(分数:2.00)A.do-while的循环体至少无条件执行一次 B.while的循环控制条件比 do-while的循环控制条件更严格C.do-while允许从外部转到

39、循环体内D.do-while的循环体不能是复合语句解析:解析:while 是先判断条件再执行语句;do-while 则是先执行一次语句再判断条件,从而决定是否继续再执行循环体中的语句,这正是二者主要区别。31.C+语言中用于定义类的关键字是(分数:2.00)A.class B.structC.defaultD.sizeof解析:解析:C+中类定义的关键字是 class。class 不能大写。32.已知各变量的定义如下 int i=8,k,a,b; unsigned long w=5; double x=142,y=52; 则以下符合 C+语言语法的表达式是(分数:2.00)A.a+=a-=(b

40、=4) * (a=3) B.a=a * 3+2C.x(-3)D.y=float i解析:解析:选项 B)中 a在运算前未赋初值,在 C+语言里变量在运算前必须赋初值;选项 C)中的模运算符“”两侧均应为整型数据;选项 D)应改为 y=(float)i。33.下面程序应能对两个整型变量的值进行交换。以下正确的说法是 #includeiostreamh void swap(int p,int q) int t; t=p; p=q; q=t; void main( ) int a=10,b=20; couta“ “b; swap( t= * p; * p=*q;*q=t;执行程序时,先将 a的地址传

41、递给指针变量 p,b 的地址传递给指针变量 q,然后将*p(a 的值)的值传递给 t,将*q(b 的值)传递给 * p,将 t的值传递给 * q,从而将 a值和 b值互换。34.以下程序的输出结果是 #includeiostreamh void main( ) int a=21,b=11; cout- -a+b;(分数:2.00)A.30B.31 C.32D.33解析:解析:自减运算符位于变量之前时,先使变量的值减 1,再进行运算。35.下面程序段的运行结果是 #includeiostreamh void main( ) char*s=“abcde“; S+=2; couti1;i-) for

42、(j=0;ji;j+) (分数:2.00)A.20 B.261C.15D.25解析:解析:本题中第 1个 for循环执行 5次后结束,第 2个 for循环执行 5次。第 2个 for循环中第 1次执行了 6次,第 2次执行了 5次,第 3次执行了 4次,第 4次执行了 3次,第 5次执行了 2次,共 20次。二、B填空题/B(总题数:15,分数:30.00)38.常用的黑箱测试有等价分类法、 【1】 、因果图法和错误推测法 4种。(分数:2.00)填空项 1:_ (正确答案:【1】边值分析法)解析:解析:黑箱测试方法完全不考虑程序的内部结构和内部特征,而只是根据程序功能导出测试用例。常用的黑箱

43、测试有等价分类法、边值分析法、因果图法和错误推测法 4种。39.测试的目的是暴露错误,评价程序的可靠性;而 【2】 的目的是发现错误的位置并改正错误。(分数:2.00)填空项 1:_ (正确答案:【2】调试)解析:解析:软件测试的目标是在精心控制的环境下执行程序,以发现程序中的错误,给出程序可靠性的鉴定;调试也称排错,它是一个与测试有联系又有区别的概念。具体来说,测试的目的是暴露错误,评价程序的可靠性,而调试的目的是发现错误的位置,并改正错误。40.软件维护活动包括以下几类:改正性维护、适应性维护、 【3】 维护和预防性维护。(分数:2.00)填空项 1:_ (正确答案:【3】完善性)解析:解

44、析:软件维护活动包括以下几类:改正性维护、适应性维护、完善性维护和预防性维护。改正性维护是指在软件交付使用后,为了识别和纠正软件错误、改正软件性能上的缺陷、排除实施中的误使用,应当进行的诊断和改正错误的过程;适应性维护是指为了使软件适应变化,而去修改软件的过程;完善性维护是指为了满足用户对软件提出的新功能与性能要求,需要修改或再开发软件,以扩充软件功能、增强软件性能、改进加工效率、提高软件的可维护性;预防性维护是为了提高软件的可维护性、可靠性等,为以后的进一步改进软件打下良好基础。41.在面向对象的设计中,用来请求对象执行某一处理或回答某些信息的要求称为 【4】 。(分数:2.00)填空项 1

45、:_ (正确答案:【4】消息)解析:解析:在面向对象技术中,主要用到对象(object)、类(class)、方法(method)、消息 (message)、继承(inheritance)、封装(encapsulation)等基本概念。其中消息是用来请求对象执行某一处理或回答某些信息的要求。42.关键字 ASC和 DESC分别表示 【5】 的含义。(分数:2.00)填空项 1:_ (正确答案:【5】升序排列和降序排列)解析:解析:ASC 表示升序排列,DESC 表示降序排列,多用在索引定义和 SELECT语句中的 ORDER子句中。43.C+语言中表示双精度浮点数的关键字是 【6】 。(分数:2.00)填空项 1:_ (正确答案:【6】double)解析:解析:C+语言中基本的数据类型关键字,有 int,float,double。44.执行下列语句后,c3 中的值为 【7】 int c1=1,c2=2,c3;c3=10/c2 * c1;(分数:2.00)填空项 1:_

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