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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

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

1、二级 C+笔试-422 及答案解析(总分:86.00,做题时间:90 分钟)一、选择题(总题数:35,分数:59.00)1.下列程序段中的变量已正确定义:for(i=0;i4;i+,i+)for(k=1;k3;k+);printf(“*“);程序段的输出结果是( )。A) * B) *C) * D) *(分数:2.00)A.B.C.D.2.下列程序的运行结果是#inClUdeiostream.hclass Locationprivate:int X,Y;pubhc:void init(int0,int0) ;void valueX(int val) Xval;int valueX( ) ret

2、um 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;A) 5 B) 0 C) 5 D) 00 0 0 06 6

3、 6 64 4 2 2(分数:2.00)A.B.C.D.3.下面关于派生类的描述中错误的是( )。A) 派生类中至少有一个基类B) 一个派生类可以作为另一个派生类的基类C) 派生类只继承了基类中的公有成员和保护成员D) 派生类的缺省继承方式是私有(分数:2.00)A.B.C.D.4.下面对于友元函数描述正确的是( )。A) 友元函数的实现必须在类的内部定义B) 友元函数是类的成员函数C) 友元函数破坏了类的封闭性和隐藏性D) 友元函数不能访问类的私有成员(分数:2.00)A.B.C.D.5.在下列程序画线处填入的正确语句是( )。#include iostreamusing namespace

4、 std;class Basepublic:void fun()cout“Base:fun“,end1;class Derived:public Basevoid fun()_ /显式调用基类的函数 fun()cout“Derived:fun“ end1;A) fun(); B) Base.fun(); C) Base:fun(); D) Base-fun();(分数:1.00)A.B.C.D.6.下列叙述中正确的是( )。A) 有一个以上根结点的数据结构不一定是非线性结构B) 只有一个根结点的数据结构不一定是线性结构C) 循环链表是非线性结构D) 双向链表是非线性结构(分数:2.00)A.B

5、.C.D.7.对下面程序描述正确的是( )。#include iostream using namespace std;class A private:int i;public:class B private:int j;protected:int k;int fun1 ( );MyB;int fun2 ( ); A) 定义类 B的对象的语句是: A:B b;B) 类 A的成员函数 fun2()可以用 MyBj 的方式访问类 B的私有成员 j。C) 类 A的成员函数 fun2()可以用 MyBk 的方式访问类 B的保护成员 k。D) 类 B的成员函数 fun1()可以直接访问类 A的私有成员

6、i。(分数:2.00)A.B.C.D.8.有下列程序:#includestdio.h#include“string.h“typedestructchar name9;char sex;float score2;STU;void f(STU a)STU b=“Zhao“,m,85.0,90.0;int i;strcpy(a.name,b.name);a.sex=b.sex:for(i=0;i2;i+)a.scorei=b.scorei;void main()STU c=“Qian“,f,95.0,92.0);f(c);printf(“%s,%c,%2.0f,%2.0fn“,c.name,c.se

7、x,c.score0,c.score1);程序的运行结果是( )。A) Qian,f,95,92 B) Qian,m,85,90 C) Zhao,f,95,92 D) Zhao,m,85,90(分数:2.00)A.B.C.D.9.下列定义中 p指向的地址可更改,但*p 不能够更改的是( )。A) const int *p; B) int * const p;C) const int *const p; D) int * p;(分数:2.00)A.B.C.D.10.若有以下定义:inta1,2,3,4,5,6,7;char clb,c2=2;则数值不为 2的表达式是( )。A) a1 B) d-

8、c1 C) a3-c2 D) c2-0(分数:2.00)A.B.C.D.11.下面不属于软件设计原则的是A) 抽象 B) 模块化 C) 自底向上 D) 信息隐蔽(分数:1.00)A.B.C.D.12.下面对于友元函数描述正确的是A) 友元函数的实现必须在类的内部定义 B) 友元函数是类的成员函数C) 友元函数破坏了类的封装性和隐藏性 D) 友元函数不能访问类的私有成员(分数:1.00)A.B.C.D.13.在面向对象方法中,一个对象请求另一个对象为其服务的方式是通过发送( )。A) 调用语句 B) 命令 C) 口令 D) 消息(分数:2.00)A.B.C.D.14.下列预算符不能重载为友元函数

9、的( )。A) = () ( ) - B) + - + - C) = = D) += -= *= /=(分数:1.00)A.B.C.D.15.有如下程序:#include iostreamusing namespace std;class AA int n;public:AA(int k):n(k) int get() return n;int get()const retnm n+1; int main()AA a(5);const AA b(6);cout a.get()b.get();return 0;执行后的输出结果是_ 。A) 55 B) 57 C) 75 D) 77(分数:2.00

10、)A.B.C.D.16.必须用一对大括号括起来的程序段是( )。A) switch语句中的 case标号语句 B) if 语句的分支C) 循环语句的循环体 D) 函数的函数体(分数:2.00)A.B.C.D.17.下面关于虚函数的描述中正确的是A) 虚函数是一个静态成员函数B) 虚函数是一个非成员函数C) 虚函数既可以在函数说明时定义,也可以在函数实现时定义D) 派生类的虚函数与基类中对应的虚函数具有相同的参数个数和类型(分数:1.00)A.B.C.D.18.下面有关重载函数的描述中正确的是A) 重载函数必须具有不同的返回值类型 B) 重载函数形参个数必须不同C) 重载函数必须具有不同的形参列

11、表D) 重载函数名可以不同(分数:1.00)A.B.C.D.19.为避免指针使用上的错误,可以在定义指针时就给指针一个值,这叫指针的初始化。不能初始化指针的值是( )。A) 8 B) 0 C) NULL D) 地址(分数:2.00)A.B.C.D.20.若调用一个函数,且此函数中没有 return语句,则正确的说法是该函数A) 没有返回值B) 返回若干个系统默认值C) 有返回值,但返回一个不确定的值D) 能返回一个用户所希望的函数值(分数:1.00)A.B.C.D.21.下面程序的运行结果为( )。#includeiostream.hvoid swap (int temp=a+;a=b;b=t

12、emp;void main()int a=2, b=3;swap(a,b);couta“,“bend1;A. 2,3 B. 3,2C. 2,2 D. 3,3(分数:2.00)A.B.C.D.22.开发软件时对提高开发人员工作效率至关重要的是A)操作系统的资源管理功能 B)先进的软件开发工具和环境C)程序人员的数量 D)计算机的并行处理能力(分数:1.00)A.B.C.D.23.假定 MyClass为一个类,那么下列的函数说明中,( )为该类的析构函数。A) voidMyClass(); B) MyClass(int n);C) MyClass(); D) MyClass();(分数:1.00)

13、A.B.C.D.24.数据流图用于抽象描述一个软件的逻辑模型,数据流图由一些特定的图符构成。下列图符名标识的图符不属于数据流图合法图符的是_ 。A) 控制流 B) 加工 C) 数据存储 D) 源(分数:2.00)A.B.C.D.25.若语句:coutsetfill()setw(5)3141512setw(5)“OK!“;是程序中第 1个输出语句,则输出结果是( )。A) 3141512OK! B) 3141512OK! C) 31415OK! D) 31415OK!(分数:2.00)A.B.C.D.26.面向对象程序设计将数据与( )放在一起,作为一个互相依存、不可分割的整体来处理。A) 信息

14、 B) 数据抽象C) 数据隐藏 D) 对数据的操作(分数:2.00)A.B.C.D.27.如在类中有如下函数定义Void fun(int a,int b,int c=0);则下列调用中,正确的是( )。A) fun(1) B) fun(1,1) C) fun() D) fun(2,2,3,4)(分数:2.00)A.B.C.D.28.下列叙述中错误的是( )。A) 一种数据的逻辑结构可以有多种存储结构B) 数据的存储结构与数据的处理效率无关C) 数据的存储结构与数据的处理效率密切相关D) 数据的存储结构在计算机中所占的空间不一定是连续的(分数:2.00)A.B.C.D.29.应在下列程序画线处填

15、入的正确语句是 ( )。#include iostreamusing namespace std;clas Basepublic:void fun()cout“Base:fun“end1;class Derived : public Basevoid fun()_/显示调用基类的函数 fun()cout“Derived:fun“end1;A) fun(); B) Base.fun(); C) Base:fun(); D) Base-fun();(分数:1.00)A.B.C.D.30.若有如下语句:#includeiostream.hvoid main( ) int x3;doxx2;cout

16、x;while(!(X) ) ;则上面程序段A) 输出的是 1 B) 输出的是 1和2C) 输出的是 3和 0 D) 是死循环(分数:2.00)A.B.C.D.31.若 AA为一个类,a 为该类的非静态数据成员,在该类的一个成员函数定义中访问 a时,其书写格式为( )。A) a B) AA.a C) a() D) AA:a()(分数:2.00)A.B.C.D.32.已知数据表 A中每个元素距其最终位置不远,为节省时间,应采用的算法是( )。A) 堆排序 B) 直接插入排序C) 快速排序 D) 直接选择排序(分数:2.00)A.B.C.D.33.下列 do.while循环的循环次数为( )。in

17、t i=5;do couti-endl;i-;while(i!=0);A) 0 B) 1C) 5 D) 无限(分数:2.00)A.B.C.D.34.有如下程序:#includeiostreamusing namespace std;class Pointint x,y;public:Point(int x1=0,int y1=0):x(x1),y(y1)int get()return x+y;class CirclePoint center;int radius;public:Circle(int cx,int cy,int r):center(cx,cy),radius(r)int get(

18、)return center.get()+radius;int main()Circle c(3,4,5);coutc.get()end1;return 0;运行时的输出结果是( )。A) 5 B) 7 C) 9 D) 12(分数:2.00)A.B.C.D.35.所有在函数中定义的变量,连同形式参数,都属于A) 全局变量 B) 局部变量 C) 静态变量 D) 寄存器变量(分数:1.00)A.B.C.D.二、填空题(总题数:15,分数:27.00)36.多继承情况下,派生类对基类成员的访问会出现二义性。解决二义性的方法是 1、 2 和 3。(分数:2.00)填空项 1:_填空项 1:_填空项 1

19、:_37.软件生命周期分为软件定义期、软件开发期和软件维护期,详细设计属于 1 中的一个阶段。(分数:2.00)填空项 1:_38.表达式 x.operator+(y.operator+(0)还可以写成_。(分数:2.00)填空项 1:_39.软件工程研究的内容主要包括: 1 技术和软件工程管理。(分数:2.00)填空项 1:_40.下列程序编译时发现 pb-f(10);语句出现错误,其原因是_。#includeiostream.hclass Basepublic:void f(int x)cout“Base:“xendl;);class Derived:public Basepublic:v

20、oid f(char*str)cout“Derived:“strendl;void main(void)Derived*pd=new Derived;Pd-f(10);(分数:2.00)填空项 1:_41.如下程序声明了一个电话号码类 PhoneNumber,重载了流插入运算符,以便于电话号码的输出。请将程序补充完整。#includeiostream#includeiomanip#includestringusing namespace std;class PhoneMunberpublic:void setNumber(string number)this-number=number; /重

21、载流插入操作符friend_(ostream output,const PhoneNumber num)outputnum.number; return output; private:string number;int main()PhoneNumber phone;phone.setNumber(“8008100598“);eout“The phone number is:“phoneendl;return 0;(分数:2.00)填空项 1:_42.任何非空树中有且仅有一个结点没有前驱结点,该结点就是树的 1。(分数:1.00)填空项 1:_43.己知一个函数的原型是:int fn(dou

22、ble x);若要以 5.27为实参调用该函数,应使用表达式 1。(分数:2.00)填空项 1:_44.将一个函数声明为一个类的友元函数必须使用关键字 1。(分数:2.00)填空项 1:_45.一个抽象类的派生类可以实例化的必需条件是实现了所有的 1。(分数:2.00)填空项 1:_46.C+语言中的多态性是在编译时通过_和模板体现的,在运行时是通过_体现的。(分数:1.00)填空项 1:_47.长度为 n的顺序存储线性表中,当在任何位置上插入一个元素概率都相等时,插入一个元素所需移动元素的平均个数为 1。(分数:1.00)填空项 1:_48. 1允许用户为类定义一种模式,使得类中的某些数据成

23、员及某些成员函数的返回值能取任意类型。(分数:2.00)填空项 1:_49.若有 int x5,*p=x;则数组元素 x3可以表示为*(p+ 1),也可以表示为 p3。(分数:2.00)填空项 1:_50.数据库系统中实现各种数据管理功能的核心软件是 1。(分数:2.00)填空项 1:_二级 C+笔试-422 答案解析(总分:86.00,做题时间:90 分钟)一、选择题(总题数:35,分数:59.00)1.下列程序段中的变量已正确定义:for(i=0;i4;i+,i+)for(k=1;k3;k+);printf(“*“);程序段的输出结果是( )。A) * B) *C) * D) *(分数:2

24、.00)A.B.C.D. 解析:解析 本题中第二个 fnr循环语句的后面有一个分号,所以两个 for循环语句的执行语句为空。当两个 for循环语句执行完后,再执行 printf语句输出一个星号。所以正确答案为选项 D。2.下列程序的运行结果是#inClUdeiostream.hclass Locationprivate: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 Lo

25、cation: :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;A) 5 B) 0 C) 5 D) 00 0 0 06 6 6 64 4 2 2(分数:2.00)A. B.C.D.解析:解析 本题中有成员函数和它的重载函数,要注意它们的不同,

26、在本题中先调用了 init函数,初始化了 X、Y,都为 0,valueX(5) ;又将 X变为 5,所以输出 5和 0,然后初始化 init(6,2) ,接着又valueY(4) ;将 X、Y 设为 6和 4,所以输出 6和 4。3.下面关于派生类的描述中错误的是( )。A) 派生类中至少有一个基类B) 一个派生类可以作为另一个派生类的基类C) 派生类只继承了基类中的公有成员和保护成员D) 派生类的缺省继承方式是私有(分数:2.00)A.B.C. D.解析:解析 继承方式有公有继承、私有继承和保护继承 3种,缺省的继承方式是私有继承。派生类从基类继承所有的成员,但是对于基类的私有成员派生类是不

27、可直接访问的。4.下面对于友元函数描述正确的是( )。A) 友元函数的实现必须在类的内部定义B) 友元函数是类的成员函数C) 友元函数破坏了类的封闭性和隐藏性D) 友元函数不能访问类的私有成员(分数:2.00)A.B.C. D.解析:5.在下列程序画线处填入的正确语句是( )。#include iostreamusing namespace std;class Basepublic:void fun()cout“Base:fun“,end1;class Derived:public Basevoid fun()_ /显式调用基类的函数 fun()cout“Derived:fun“ end1;A

28、) fun(); B) Base.fun(); C) Base:fun(); D) Base-fun();(分数:1.00)A.B.C. D.解析:解析 本题主要考核作用域分辨符的使用。作用域分辨符“:”可以用来限定要访问的成员所在类的名称。6.下列叙述中正确的是( )。A) 有一个以上根结点的数据结构不一定是非线性结构B) 只有一个根结点的数据结构不一定是线性结构C) 循环链表是非线性结构D) 双向链表是非线性结构(分数:2.00)A.B. C.D.解析:7.对下面程序描述正确的是( )。#include iostream using namespace std;class A privat

29、e:int i;public:class B private:int j;protected:int k;int fun1 ( );MyB;int fun2 ( ); A) 定义类 B的对象的语句是: A:B b;B) 类 A的成员函数 fun2()可以用 MyBj 的方式访问类 B的私有成员 j。C) 类 A的成员函数 fun2()可以用 MyBk 的方式访问类 B的保护成员 k。D) 类 B的成员函数 fun1()可以直接访问类 A的私有成员 i。(分数:2.00)A. B.C.D.解析:解析 内嵌类的成员函数对包容类的成员没有访问特权,反之亦然。8.有下列程序:#includestdio

30、.h#include“string.h“typedestructchar name9;char sex;float score2;STU;void f(STU a)STU b=“Zhao“,m,85.0,90.0;int i;strcpy(a.name,b.name);a.sex=b.sex:for(i=0;i2;i+)a.scorei=b.scorei;void main()STU c=“Qian“,f,95.0,92.0);f(c);printf(“%s,%c,%2.0f,%2.0fn“,c.name,c.sex,c.score0,c.score1);程序的运行结果是( )。A) Qian

31、,f,95,92 B) Qian,m,85,90 C) Zhao,f,95,92 D) Zhao,m,85,90(分数:2.00)A. B.C.D.解析:解析 本题考查在结构体中函数的调用,主函数调用 f(c)后,实参传向形参,但程序中没有返回语句,故形参不能将值传回实参,实参之间值的传递具有不可逆性,所以 printf输出的还是 c中实参的值。9.下列定义中 p指向的地址可更改,但*p 不能够更改的是( )。A) const int *p; B) int * const p;C) const int *const p; D) int * p;(分数:2.00)A. B.C.D.解析:解析 c

32、onst int*p:是只能改变指针地址,Int*const p;是只能改变*p 的内容,constmt*const p;是指针的地址和*p 的内容都不能改变,Int *ps 是两者都能改变。10.若有以下定义:inta1,2,3,4,5,6,7;char clb,c2=2;则数值不为 2的表达式是( )。A) a1 B) d-c1 C) a3-c2 D) c2-0(分数:2.00)A.B.C.D. 解析:解析 字符在进行数学运算时取其 ASC码值,其中b的 ASC码值为 98,d的 ASC码值为 100,字符2的 ASC码值为 50。可知 D选项中表达式 c2-0的值为 50。11.下面不属

33、于软件设计原则的是A) 抽象 B) 模块化 C) 自底向上 D) 信息隐蔽(分数:1.00)A.B.C. D.解析:解析 软件设计遵循软件工程的基本目标和原则,建立了适用于在软件设计中应该遵循的基本原理和与软件设计有关的概念,它们是抽象、模块化、信息隐蔽和数据独立性。自底向上是集成测试中增量测试的一种。12.下面对于友元函数描述正确的是A) 友元函数的实现必须在类的内部定义 B) 友元函数是类的成员函数C) 友元函数破坏了类的封装性和隐藏性 D) 友元函数不能访问类的私有成员(分数:1.00)A.B.C. D.解析:解析 友元函数的定义既可以在类内部进行,也可以在类外部进行。它提高了程序的运行

34、效率,但破坏了类的封装性和隐藏性,使得类的非成员函数可以访问类的私有成员。13.在面向对象方法中,一个对象请求另一个对象为其服务的方式是通过发送( )。A) 调用语句 B) 命令 C) 口令 D) 消息(分数:2.00)A.B.C.D. 解析:解析 在面向对象方法中,对象之间通过消息进行通信。消息中只包含传递者的要求,它告诉接受者需要做哪些处理,但并不指示接受者应该怎么完成这些处理,接受者独立决定采用什么方式完成所需的处理。14.下列预算符不能重载为友元函数的( )。A) = () ( ) - B) + - + - C) = = D) += -= *= /=(分数:1.00)A. B.C.D.

35、解析:解析 关于运算符重载为友元函数有如下规定:一般情况下,单目运算符最好重载为类的成员函数,双目运算符则最好重载为类的友元函数;双目运算符“=、()、-”不能重载为类的友元函数。所以本题答案为 A。15.有如下程序:#include iostreamusing namespace std;class AA int n;public:AA(int k):n(k) int get() return n;int get()const retnm n+1; int main()AA a(5);const AA b(6);cout a.get()b.get();return 0;执行后的输出结果是_

36、。A) 55 B) 57 C) 75 D) 77(分数:2.00)A.B. C.D.解析:解析 const 是可以标志运算符重载的,所以选择 B。16.必须用一对大括号括起来的程序段是( )。A) switch语句中的 case标号语句 B) if 语句的分支C) 循环语句的循环体 D) 函数的函数体(分数:2.00)A.B.C.D. 解析:解析 此题考查的是语句块和函数。if 语句的分支和循环语句的循环体可以是一条语句也可以使一个语句块,所以不是必须用一个大括号括起来;switch 语句中的 case标号语句可以是一系列语句,也可以包含语句块,也不是必须用一对大括号括起来;函数的函数体必须用

37、一对大括号括起来。17.下面关于虚函数的描述中正确的是A) 虚函数是一个静态成员函数B) 虚函数是一个非成员函数C) 虚函数既可以在函数说明时定义,也可以在函数实现时定义D) 派生类的虚函数与基类中对应的虚函数具有相同的参数个数和类型(分数:1.00)A.B.C.D. 解析:解析 本题考核虚函数的概念。虚函数是非静态的成员函数,它不能是友元函数,但可以在另一个类中被声明为友元函数。所以 A) 选项不正确;虚函数必须是类的成员函数,所以 B) 选项是错误的:虚函数声明只能出现在类定义的函数原型声明中,而不能在成员函数的函数体实现的地方,所以 C) 选项是不正确的:一般要求基类中说明了虚函数后,派

38、生类说明的虚函数应该与基类中虚函数的参数个数相等,对应参数的类型相同。如果不相同,则将派生类虚函数的参数类型强制转换为基类中虚函数的参数类型。故 D) 选项的说法是正确的。18.下面有关重载函数的描述中正确的是A) 重载函数必须具有不同的返回值类型 B) 重载函数形参个数必须不同C) 重载函数必须具有不同的形参列表D) 重载函数名可以不同(分数:1.00)A.B.C. D.解析:解析 所谓函数重载,是指同一个函数名可以对应多个函数的实现。进行函数重载时,要求同名函数在参数个数上不同,或者参数类型上不同。即重载函数具有不同的形参列表。19.为避免指针使用上的错误,可以在定义指针时就给指针一个值,

39、这叫指针的初始化。不能初始化指针的值是( )。A) 8 B) 0 C) NULL D) 地址(分数:2.00)A. B.C.D.解析:解析 只有 0、NULL、地址可以初始化指针,其他的都不能。20.若调用一个函数,且此函数中没有 return语句,则正确的说法是该函数A) 没有返回值B) 返回若干个系统默认值C) 有返回值,但返回一个不确定的值D) 能返回一个用户所希望的函数值(分数:1.00)A.B.C. D.解析:解析 return 语句的意义和用法。解题要点 在 c+语言函数调用中,如果被调用函数中没有 return语句,并不带回一个确定的、用户所希望得到的函数值,而是带回的是一个不确

40、定的值。考点链接 为了明确表示“不带回值”,可以用 void 定义无类型(或称空类型),这时,系统就保证不使函数带回任何值。21.下面程序的运行结果为( )。#includeiostream.hvoid swap (int temp=a+;a=b;b=temp;void main()int a=2, b=3;swap(a,b);couta“,“bend1;A. 2,3 B. 3,2C. 2,2 D. 3,3(分数:2.00)A.B.C.D. 解析:22.开发软件时对提高开发人员工作效率至关重要的是A)操作系统的资源管理功能 B)先进的软件开发工具和环境C)程序人员的数量 D)计算机的并行处理能

41、力(分数:1.00)A.B. C.D.解析:解析 软件工程鼓励研制和采用各种先进的软件开发方法、工具和环境。工具和环境的使用又进一步提高了软件的开发效率、维护效率和软件质量。23.假定 MyClass为一个类,那么下列的函数说明中,( )为该类的析构函数。A) voidMyClass(); B) MyClass(int n);C) MyClass(); D) MyClass();(分数:1.00)A.B.C.D. 解析:解析 本题考核类的析构函数。在 C+中,析构函数名为符号“”加类名,析构函数没有参数和返回值。根据以上知识可知,MyClass 类的正确析构函数的说明为MyClass()。24

42、.数据流图用于抽象描述一个软件的逻辑模型,数据流图由一些特定的图符构成。下列图符名标识的图符不属于数据流图合法图符的是_ 。A) 控制流 B) 加工 C) 数据存储 D) 源(分数:2.00)A. B.C.D.解析:解析 数据流图的合法图符包括加工、数据存储和源。25.若语句:coutsetfill()setw(5)3141512setw(5)“OK!“;是程序中第 1个输出语句,则输出结果是( )。A) 3141512OK! B) 3141512OK! C) 31415OK! D) 31415OK!(分数:2.00)A. B.C.D.解析:26.面向对象程序设计将数据与( )放在一起,作为一

43、个互相依存、不可分割的整体来处理。A) 信息 B) 数据抽象C) 数据隐藏 D) 对数据的操作(分数:2.00)A.B.C.D. 解析:27.如在类中有如下函数定义Void fun(int a,int b,int c=0);则下列调用中,正确的是( )。A) fun(1) B) fun(1,1) C) fun() D) fun(2,2,3,4)(分数:2.00)A.B. C.D.解析:解析 fun 函数中第三个参数有默认值,故只需给出前两个参数即可。28.下列叙述中错误的是( )。A) 一种数据的逻辑结构可以有多种存储结构B) 数据的存储结构与数据的处理效率无关C) 数据的存储结构与数据的处理

44、效率密切相关D) 数据的存储结构在计算机中所占的空间不一定是连续的(分数:2.00)A.B. C.D.解析:解析 数据的存储结构分为顺序结构和链式结构,一个数据的逻辑结构可以有多种存储结构。顺序结构中数据元素所占的存储空间是连续的,而链式存储结构中,数据元素所占的存储空间不一定是连续的。数据的存储结构与数据的处理效率密切相关。29.应在下列程序画线处填入的正确语句是 ( )。#include iostreamusing namespace std;clas Basepublic:void fun()cout“Base:fun“end1;class Derived : public Basevo

45、id fun()_/显示调用基类的函数 fun()cout“Derived:fun“end1;A) fun(); B) Base.fun(); C) Base:fun(); D) Base-fun();(分数:1.00)A.B.C. D.解析:解析 作用域分辨符号是“:”,它可以用来限定要访问的成员所在的类的名称。在派生类Derive的定义中显式调用基类的函数 fun(),则只能借助于作用域分辨符“:”。30.若有如下语句:#includeiostream.hvoid main( ) int x3;doxx2;cout x;while(!(X) ) ;则上面程序段A) 输出的是 1 B) 输出

46、的是 1和2C) 输出的是 3和 0 D) 是死循环(分数:2.00)A.B. C.D.解析:解析 dowhile 语句的一般格式为 do循环体语句 while(表达式) ;,先执行循环体语句一次,再判断表达式的值,若为真则继续执行循环,否则终止循环。本题中,先执行 xx2,即为 1。判断表达式的值,!(x) 为真,x0,继续循环。再次执行循环体语句后,x2,此时表达式的值为 0,结束循环。31.若 AA为一个类,a 为该类的非静态数据成员,在该类的一个成员函数定义中访问 a时,其书写格式为( )。A) a B) AA.a C) a() D) AA:a()(分数:2.00)A. B.C.D.解析:32.已知数据表 A中每个元素距其最终位置不远,为节省时间,应采用的算法是( )。A) 堆排序 B) 直接插入排序C) 快速排序 D) 直接选择排序(分数:2.00)A.B. C.D.解析:33.下列 do.while循环的循环次数为( )。int i=5;do couti-endl;i-;while(i!=0);A) 0 B) 1C) 5 D) 无限(分数:2.00)A.B.C.D. 解析:34.有如下程序:#includeiostreamus

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