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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

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

1、二级 C+笔试-189 及答案解析(总分:100.00,做题时间:90 分钟)一、选择题(总题数:35,分数:70.00)1.将运算符重载为类成员函数时,其参数表中没有参数,说明该运算符是( )。(分数:2.00)A.不合法的运算符B.一元运算符C.无操作数的运算符D.二元运算符2.对于循环队列,下列叙述中正确的是( )。(分数:2.00)A.队头指针是固定不变的B.队头指针一定大于队尾指针C.队头指针一定小于队尾指针D.队头指针可以大于队尾指针,也可以小于队尾指针3.Sample 是一个类,执行下面语句后,调用 Sample 类的构造函数的次数是( )。Sample a2,*p=new Sa

2、mple;(分数:2.00)A.0B.1C.2D.34.有如下程序:#includeiostreamusing namespace std;class Namechar name20;public:Name()strcpy(name,“);cout?;Name(char*fname)strcpy(name,fname);cout?;int main()Name names3=Name(“张三“),Name(“李四“);return 0;运行此程序输出符号?的个数是( )。(分数:2.00)A.0B.1C.2D.35.有如下程序:#includeiostreamusing namespaee s

3、td;class Toypublic:Toy(char *_n)strcpy(name,_n);count+;Toy()count-;char *GetName()return name;static int getCount()return count;private:char name10;static int count;int Toy:count=0;int main()Toy t1(“snoopy“),t2(“Mickey“),t3(“Barbie“);toutt1.getCount()end1;return 0;运行时的输出结果是( )。(分数:2.00)A.1B.2C.3D.运行

4、时出错6.已知函数 FA 调用 FB,若要把这两个函数定义在同一个文件中,则( )。(分数:2.00)A.FA 必须定义在 FB 之前B.FB 必须定义在 FA 之前C.若 FA 定义在 FB 之后,则 FA 的原型必须出现在 FB 的定义之前D.若 FB 定义在 FA 之后,则 FB 的原型必须出现在 FA 的定义之前7.有如下类定义:class Achar *a;public:A():a(0)A(char*aa)/把 a3 所指字符串拷贝到 a 所指向的存储空间a=_;strcpy(a,aa);A()deletea;横线处应填写的表达式是( )。(分数:2.00)A.Dew charstr

5、len(aa)+1B.charstrlen(aa)+1C.charstrlen(aa)D.Dew charsizeof(aa)-18.有如下程序:#includeiostreamusing namespace std;class Apublic:A(int i):rl(i)void print()coutEr1-“;void print()constcoutCr1*r1-;private:int r1;int main()A a1(2); const A a2(4);a1.print(); a2.print();return 0;运行时的输出结果是( )。(分数:2.00)A.运行时出错B.E

6、2-C16-C.C4-C16-D.E2-E4-9.有如下程序:#includeiostream#includeiomanipusing namespace std;int main()int s=123,234;coutsetfill(*)setw(6);for(int i=0;i2;i+)coutsiend1;return 0;运行时的输出结果是( )。(分数:2.00)A.123234B.*123234C.*123*234D.*123234*10.有如下程序段:int i=1;while(1)i+;if(i=10) break;if(i%2=0) cout*;执行这个程序段输出字符*的个数

7、是( )。(分数:2.00)A.10B.3C.4D.511.有如下两个类定义:class AA;class BBAA v1,*v2;BB v3;int *v4;其中有一个成员变量的定义是错误的,这个变量是( )。(分数:2.00)A.v1B.v2C.v3D.v412.下列关于模板形参的描述中,错误的是( )。(分数:2.00)A.模板形参表必须在关键字 template 之后B.模板形参表必须用括弧()括起来C.可以用 class 修饰模板形参D.可以用 typename 修饰模板形参13.有如下程序:#includeiostreamusing namespace std;class C1pu

8、blic:C1()cout1;class C2:public C1public:C2()cout2;int main()C2 cb2;C1 *cb1;return 0;运行时的输出结果是( )。(分数:2.00)A.121B.21C.211D.1214.计算斐波那契数列第 n 项的函数定义如下:int fib(int n)if (n=0)return 1;else if(n=1) return 2;else return fib(n=1)+fib(n=2);若执行函数调用表达式 fib(2),函数 fib 被调用的次数是( )。(分数:2.00)A.1B.2C.3D.415.下列数据结构中,能

9、够按照“先进后出”原则存取数据的是( )。(分数:2.00)A.循环队列B.栈C.队列D.二叉树16.已知数组 arr 的定义如下:int arr5=1,2,3,4,5;下列语句中输出结果不是 2 的是( )。(分数:2.00)A.cout*arr+1end1;B.cout*(art+1)end1;C.coutarr1end1;D.cout*arrend1;17.有如下模板声明:templatetypename T1,typename T2class A;下列声明中,与上述声明不等价的是( )。(分数:2.00)A.templateclass T1,class T2class A;B.temp

10、lateclass T1,typename T2class A;C.templatetypename T1,class T2class A;D.templatetypename T1,T2class A;18.下列关于运算符重载的描述中,错误的是( )。(分数:2.00)A.:运算符不能重载B.类型转换运算符只能作为成员函数重载C.将运算符作为非成员函数重载时必须定义为友元D.重载运算符应完成“下标访问”操作19.有如下类定义:class XXint xdata;public:XX(int n=0):xdata(n);class YY:public XXint ydata;public:YY(

11、int m=0,int n=0):XX(m),ydata(n);YY 类的对象包含的数据成员的个数是( )。(分数:2.00)A.1B.2C.3D.420.有 3 个关系 R,S 和 T 如下表所示:(分数:2.00)A.B.C.D.21.软件设计中划分模块的一个准则是( )。(分数:2.00)A.低内聚低耦合B.高内聚低耦合C.低内聚高耦合D.高内聚高耦合22.下列关于运算符函数的描述中,错误的是( )。(分数:2.00)A.运算符函数的名称总是以 operator 为前缀B.运算符函数的参数可以是对象C.运算符函数只能定义为类的成员函数D.在表达式中使用重载的运算符相当于调用运算符重载函数

12、23.下列关于 C+流的描述中,错误的是( )。(分数:2.00)A.coutA表达式中输出字符 AB.eof 函数可以检测是否到达文件尾C.对磁盘文件进行流操作时,必须包含头文件 fstreamD.以 ios_base:out 模式打开的文件不存在时,将自动建立一个新文件24.下列关于虚基类的描述中,错误的是( )。(分数:2.00)A.使用虚基类可以消除由多继承产生的二义性B.构造派生类对象时,虚基类的构造函数只被调用一次C.声明“class B:virtual public A”说明类 B 为虚基类D.建立派生类对象时,首先调用虚基类的构造函数25.下列数据结构中,属于非线性结构的是(

13、)。(分数:2.00)A.循环队列B.带链队列C.二叉树D.带链栈26.算法的空间复杂度是指( )。(分数:2.00)A.算法在执行过程中所需要的计算机存储空间B.算法所处理的数据量C.算法程序中的语句或指令条数D.算法在执行过程中所需要的临时工作单元数27.下列选项中不属于结构化程序设计原则的是( )。(分数:2.00)A.可封装B.自顶向下C.模块化D.逐步求精28.软件详细设计产生的如右图所示。该图是( )。(分数:2.00)A.B.C.D.29.数据库管理系统是( )。(分数:2.00)A.操作系统的一部分B.在操作系统支持下的系统软件C.一种编译系统D.一种操作系统30.下列枚举类型

14、的定义中,包含枚举值 3 的是( )。(分数:2.00)A.enum testRED,YELLOW,BLUE,BLACK;B.enum testRED,YELLOW=4,BLUE,BLACK;C.enum testRED=-1,YELLOW,BLUE,BLACK;D.enum testRED,YELLOW=6,BLUE,BLACK;31.有如下程序:#includeiostreamusing namespace std;class Publication/出版物类char name30;public:Publication(char*name=“未知名称“)strcpy(thisname,na

15、me);const char *getName()constreturn name;virtual const char *getType()constreturn“未知类型“;class Book:public Publication/书类public:Book(char *name):Publication(name)virtual const char *getType()constreturn“书“;void showPublication(Publicationp)coutp.getType()“:“p.getName()end1;int main()Book book(“精彩人生“

16、);showPublication(book);return 0;运行时的输出结果是( )。(分数:2.00)A.未知类型:未知名称B.未知类型:精彩人生C.书:未知名称D.书:精彩人生32.在下列枚举符号中,用来表示“相对于当前位置”文件定位方式的是( )。(分数:2.00)A.ios_base:curB.ios_base:begC.ios_base:outD.ios_base:end33.有如下程序:#includeiostreamusing namespace std;class AApublic;AA()cout1;class BB:public AAint k;public:BB()

17、:k(0)cout12;BB(int n):k(n)cout3;int main()BB b(4),c;return 0;运行时的输出结果是( )。(分数:2.00)A.1312B.132C.32D.141234.在 E-R 图中,用来表示实体联系的图形是( )。(分数:2.00)A.椭圆图B.矩形C.菱形D.三角形35.下列字符串中可以用作 C+标识符的是( )。(分数:2.00)A.2009varB.gotoC.test-2009D._123二、填空题(总题数:15,分数:30.00)36.某二叉树有 5 个度为 2 的结点以及 3 个度为 1 的结点,则该二叉树中共有 1 个结点。(分数

18、:2.00)填空项 1:_37.程序流程图中的菱形框表示的是 1。(分数:2.00)填空项 1:_38.软件开发过程主要分为需求分析、设计、编码与测试 4 个阶段,其中 1 阶段产生“软件需求规格说明书”。(分数:2.00)填空项 1:_39.在数据库技术中,实体集之间的联系可以是一对一或一对多的,那么“学生”和“可选课程”的联系为 1。(分数:2.00)填空项 1:_40.人员基本信息一般包括身份证号、姓名、性别、年龄等。其中可以做主关键字的是 1。(分数:2.00)填空项 1:_41.若表达式(x+(y-z)*(m/n)+3 中的变量均为 double 型,则表达式值的类型为 1。(分数:

19、2.00)填空项 1:_42.有如下循环语句:for(int i=50;i20;i-=2);couti,;运行时循环体的执行次数是_次。(分数:2.00)填空项 1:_43.利用表达式 ai可以访问 int 型数组 a 中下标为 i 的元素。在执行了语句 int*p=a;后,利用指针 p也可访问该元素,相应的表达式是 1。(分数:2.00)填空项 1:_44.下面是一个递归函数,其功能是使数组中的元素反序排列。请将函数补充完整。void reverse(int *a,int size)if(size2)return;int k=a0;a0=asize-1;asize-1=k;reverse(a

20、+1,_);(分数:2.00)填空项 1:_45.类 Sample 的构造函数将形参 data 赋值给数据成员 data。请将类定义补充完整。class Samplepublic:Sample(int data=0);private:int data;Sample:Sample(int data)(分数:2.00)填空项 1:_46.有如下类定义:class Samplepublic:Sample();Sample();private:static int data;将静态数据成员 data 初始化为 0 的语句是_。(分数:2.00)填空项 1:_47.图形类 Shape 中定义了函数 Ca

21、lArea(),三角形类 Triangle 继承了类 Shape,请将 Triangle 类中的CaIArea 函数补充完整。class Shapepublic:virtual int CalAtea()=0;class Triangle:public Shapepublic:Triangle(int s,int h):side(s),height(h)_return side *height/2;private:int side;int height;(分数:2.00)填空项 1:_48.有如下程序:#includeiostreamusing namespace std;class Gran

22、dChildpublic:GrandChild()strcpy(name,“Unknown“);const char *getName()constreturn name;virtual char *getAddress()const=0;private:char name20;class GrandSon:public GrandChildpublic:GrandSon(char *name)char *getAddress()constreturn“Shanghai“;int main()GrandChild *gs=new GrandSon(“Feifei“);coutgsgetName

23、()“住在“gsgetAddress()end1;delete gs;return 0;运行时的输出结果是_。(分数:2.00)填空项 1:_49.如下程序定义了单词类 word,类中重载了运算符,用于比较单词的大小,返回相应的逻辑值。程序的输出结果为 After Sorting:Happy Welcome,请将程序补充完整。#includeiostream#includestringusing namespaee std;class Wordpublic:Word(string s):str(s)string getStr()return str;eonstreturn(strw.str);

24、friend ostreamoperator(ostreamoutput,const Word w)outputw.str;return output;private:string str;int main()W0rd w1(“Happy“),w2(“Welcome“);cout“After sorting:“;if(w1w2)coutw1“w2;else coutw2“w1;return 0;(分数:2.00)填空项 1:_50.请将下列模板类 Data 补充完整。templatetypename Tclass Datapublic:void put(T v)val=v;_get() /返回

25、数据成员 val 的值,返回类型不加转换return val;private:T val;(分数:2.00)填空项 1:_二级 C+笔试-189 答案解析(总分:100.00,做题时间:90 分钟)一、选择题(总题数:35,分数:70.00)1.将运算符重载为类成员函数时,其参数表中没有参数,说明该运算符是( )。(分数:2.00)A.不合法的运算符B.一元运算符 C.无操作数的运算符D.二元运算符解析:解析 一元或二元运算符函数作为成员函数时,第一操作数就是对象本身,并不出现在参数表中,即第一操作数仅以 this 指针的形式隐含于参数表中,因此对于一元运算符参数表是空的;而对于二元运算符参数

26、表中只有一个参数,它代表第二操作数。2.对于循环队列,下列叙述中正确的是( )。(分数:2.00)A.队头指针是固定不变的B.队头指针一定大于队尾指针C.队头指针一定小于队尾指针D.队头指针可以大于队尾指针,也可以小于队尾指针 解析:解析 所谓循环队列,就是将队列存储空间的最后一个位置绕到第一个位置,形成逻辑上的环状空间,供队列循环使用。在循环队列结构中,当存储空间的最后一个位置已被使用而再要进行入队运算时,只要存储空间的第一个位置空闲,可将元素加入到第一个位置,即将存储空闲的第一个位置作为队尾。3.Sample 是一个类,执行下面语句后,调用 Sample 类的构造函数的次数是( )。Sam

27、ple a2,*p=new Sample;(分数:2.00)A.0B.1C.2D.3 解析:解析 构造函数在对象被创建时由系统自动调用,本题共创建 3 个对象。4.有如下程序:#includeiostreamusing namespace std;class Namechar name20;public:Name()strcpy(name,“);cout?;Name(char*fname)strcpy(name,fname);cout?;int main()Name names3=Name(“张三“),Name(“李四“);return 0;运行此程序输出符号?的个数是( )。(分数:2.00

28、)A.0B.1C.2D.3 解析:解析 对有参与无参构造函数的调用。当 names2为空时调无参构造函数,而 names0,names1调用有参构造函数,即输出 3 个“?”。5.有如下程序:#includeiostreamusing namespaee std;class Toypublic:Toy(char *_n)strcpy(name,_n);count+;Toy()count-;char *GetName()return name;static int getCount()return count;private:char name10;static int count;int To

29、y:count=0;int main()Toy t1(“snoopy“),t2(“Mickey“),t3(“Barbie“);toutt1.getCount()end1;return 0;运行时的输出结果是( )。(分数:2.00)A.1B.2C.3 D.运行时出错解析:解析 析构函数主要用于最后函数的释放空间。本题在已输出 t1.getCount()后才调用即不影响所输结果。6.已知函数 FA 调用 FB,若要把这两个函数定义在同一个文件中,则( )。(分数:2.00)A.FA 必须定义在 FB 之前B.FB 必须定义在 FA 之前C.若 FA 定义在 FB 之后,则 FA 的原型必须出现在

30、 FB 的定义之前D.若 FB 定义在 FA 之后,则 FB 的原型必须出现在 FA 的定义之前 解析:解析 主要考查函数调用时,是否设置函数原型。在 C+中若被调用的函数放在主调函数之后,需将被调用函数原型放在主调函数之前,否则不需要。7.有如下类定义:class Achar *a;public:A():a(0)A(char*aa)/把 a3 所指字符串拷贝到 a 所指向的存储空间a=_;strcpy(a,aa);A()deletea;横线处应填写的表达式是( )。(分数:2.00)A.Dew charstrlen(aa)+1 B.charstrlen(aa)+1C.charstrlen(a

31、a)D.Dew charsizeof(aa)-1解析:解析 对动态分配存储空间的考查,在 C+中,回车键需计一字符,即总的长度为 strlen(aa)+1。8.有如下程序:#includeiostreamusing namespace std;class Apublic:A(int i):rl(i)void print()coutEr1-“;void print()constcoutCr1*r1-;private:int r1;int main()A a1(2); const A a2(4);a1.print(); a2.print();return 0;运行时的输出结果是( )。(分数:2.

32、00)A.运行时出错B.E2-C16- C.C4-C16-D.E2-E4-解析:解析 const 关键字可以用于参与对重载函数的区分。重载的原则是常对象调用常成员函数,一般对象调用一般成员函数。9.有如下程序:#includeiostream#includeiomanipusing namespace std;int main()int s=123,234;coutsetfill(*)setw(6);for(int i=0;i2;i+)coutsiend1;return 0;运行时的输出结果是( )。(分数:2.00)A.123234B.*123234 C.*123*234D.*123234*

33、解析:解析 setw()为填充字符控制,仅对紧接着它的字符起作用,当输出的字符宽度小于 setw()预留的字符数时,需用 setw()设置的字符给予填充。10.有如下程序段:int i=1;while(1)i+;if(i=10) break;if(i%2=0) cout*;执行这个程序段输出字符*的个数是( )。(分数:2.00)A.10B.3C.4 D.5解析:解析 本题主要考查 while 的作用。只有 i 为偶数时才输出“*”,而本题只有 2,4,6,8 时才满足条件,而当 i 为 10 时程序结束,即只有 4 个“*”被输出。11.有如下两个类定义:class AA;class BBA

34、A v1,*v2;BB v3;int *v4;其中有一个成员变量的定义是错误的,这个变量是( )。(分数:2.00)A.v1B.v2C.v3 D.v4解析:解析 本题主要考查类对象的定义,类的对象一般放在类结构体外或在主函数中定义,而不能放在类定义的结构体中,但自身类的指针可以,本题 BB v3 不能被定义于类体内。12.下列关于模板形参的描述中,错误的是( )。(分数:2.00)A.模板形参表必须在关键字 template 之后B.模板形参表必须用括弧()括起来 C.可以用 class 修饰模板形参D.可以用 typename 修饰模板形参解析:解析 主要考查函数模板的定义。声明一个函数模板

35、的格式为“template模板形参表声明函数声明”,其中模板形参具有 typename参数名、class参数名、类型修饰参数名三种形式,形参用“”括起来。13.有如下程序:#includeiostreamusing namespace std;class C1public:C1()cout1;class C2:public C1public:C2()cout2;int main()C2 cb2;C1 *cb1;return 0;运行时的输出结果是( )。(分数:2.00)A.121B.21 C.211D.12解析:解析 在基类与派生类中,析构函数在派生类先调用,而本题有两个不同类对象,对于 c

36、b2 需先调 c2 的析构函数,再调 c1 析构函数。而对于*cb1 由于没有指针性析构函数,它将不参加传递数据。14.计算斐波那契数列第 n 项的函数定义如下:int fib(int n)if (n=0)return 1;else if(n=1) return 2;else return fib(n=1)+fib(n=2);若执行函数调用表达式 fib(2),函数 fib 被调用的次数是( )。(分数:2.00)A.1B.2C.3 D.4解析:解析 针对递归调用的含义。当 n 为 2 时有 fib(0),fib(1),fib(2)被调用,且 fib(0),fib(1)时调用结束,即共 3 次

37、。15.下列数据结构中,能够按照“先进后出”原则存取数据的是( )。(分数:2.00)A.循环队列B.栈 C.队列D.二叉树解析:解析 在栈中,允许插入与删除的一端称为栈顶,而不允许插入与删除的另一端称为栈底。栈顶元素总是最后被插入的元素,从而也是最先能被删除的元素;栈底元素总是最先被插入的元素,从而也是最后才能被删除的元素。即栈是按照“先进后出”或“后进先出”的原则组织数据的。16.已知数组 arr 的定义如下:int arr5=1,2,3,4,5;下列语句中输出结果不是 2 的是( )。(分数:2.00)A.cout*arr+1end1;B.cout*(art+1)end1;C.couta

38、rr1end1;D.cout*arrend1; 解析:解析 本题主要考查指针的特殊含义。例*px+1 指取 px 所指对象内容加 1,*(px+1)指 px 指针加1,并取结果指针内容而*px 则指 px 的首元素。17.有如下模板声明:templatetypename T1,typename T2class A;下列声明中,与上述声明不等价的是( )。(分数:2.00)A.templateclass T1,class T2class A;B.templateclass T1,typename T2class A;C.templatetypename T1,class T2class A;D.

39、templatetypename T1,T2class A; 解析:解析 模板形参有 typename参数名、class参数名、类型修饰参数名3 种形式,即 typename 与 class 通用。18.下列关于运算符重载的描述中,错误的是( )。(分数:2.00)A.:运算符不能重载B.类型转换运算符只能作为成员函数重载C.将运算符作为非成员函数重载时必须定义为友元 D.重载运算符应完成“下标访问”操作解析:解析 除了、*、*、:、?:这五个运算符外,其他运算符都可以重载。=、()、以及所有的类型转换运算符只能作为成员函数重载。作为成员函数重载时,应完成“下标访问”操作,使得向指定下标处的元

40、素赋值或取值成为可能。19.有如下类定义:class XXint xdata;public:XX(int n=0):xdata(n);class YY:public XXint ydata;public:YY(int m=0,int n=0):XX(m),ydata(n);YY 类的对象包含的数据成员的个数是( )。(分数:2.00)A.1B.2 C.3D.4解析:解析 本题主要考查派生类的继承方式。该题为公有继承,它包含基类中全部数据成员和除了构造、析构函数之外的全部成员函数,而本题数据成员的个数即为 2。20.有 3 个关系 R,S 和 T 如下表所示:(分数:2.00)A.B.C.D.

41、解析:解析 两个相同结构关系的并是由属于这两个关系的元组组成的集合。21.软件设计中划分模块的一个准则是( )。(分数:2.00)A.低内聚低耦合B.高内聚低耦合 C.低内聚高耦合D.高内聚高耦合解析:解析 耦合性与内聚性是模块独立性的两个定性标准,耦合与内聚是相互关联的。在程序结构中,各个模块的内聚性越强,则耦合性越弱。一般较优秀的软件设计,应尽量做到高内聚、低耦合,即减弱模块之间的耦合性和提高模块内的内聚性,有利于提高模块的独立性。22.下列关于运算符函数的描述中,错误的是( )。(分数:2.00)A.运算符函数的名称总是以 operator 为前缀B.运算符函数的参数可以是对象C.运算符

42、函数只能定义为类的成员函数 D.在表达式中使用重载的运算符相当于调用运算符重载函数解析:解析 该题主要考查运算符函数的定义及运算符重载时应注意事项,运算符重载是函数重载的一种特殊情况。23.下列关于 C+流的描述中,错误的是( )。(分数:2.00)A.coutA表达式中输出字符 A B.eof 函数可以检测是否到达文件尾C.对磁盘文件进行流操作时,必须包含头文件 fstreamD.以 ios_base:out 模式打开的文件不存在时,将自动建立一个新文件解析:解析 在 C+中输入用“cin”,输出用“cout”。24.下列关于虚基类的描述中,错误的是( )。(分数:2.00)A.使用虚基类可

43、以消除由多继承产生的二义性B.构造派生类对象时,虚基类的构造函数只被调用一次C.声明“class B:virtual public A”说明类 B 为虚基类 D.建立派生类对象时,首先调用虚基类的构造函数解析:解析 本题针对虚基类的定义及特点考查。虚基类的声明为“class类名:virtual继承方式基类名”,即本题的 A 为虚基类。25.下列数据结构中,属于非线性结构的是( )。(分数:2.00)A.循环队列B.带链队列C.二叉树 D.带链栈解析:解析 队列是一种允许在一端进行插入,而在另一端进行删除的线性表。栈也是一种特殊的线性表,其插入与删除只能在线性表的一端进行。26.算法的空间复杂度

44、是指( )。(分数:2.00)A.算法在执行过程中所需要的计算机存储空间 B.算法所处理的数据量C.算法程序中的语句或指令条数D.算法在执行过程中所需要的临时工作单元数解析:解析 一个算法的空间复杂度,一般是指执行这个算法所需要的内存空间。27.下列选项中不属于结构化程序设计原则的是( )。(分数:2.00)A.可封装 B.自顶向下C.模块化D.逐步求精解析:解析 结构化程序设计方法的主要原则可以概括为自顶向下、逐步求精、模块化、限制使用 goto语句等。28.软件详细设计产生的如右图所示。该图是( )。(分数:2.00)A.B.C. D.解析:解析 N-S 图是由若干基本框图构成的流程图,其

45、特点是没有流程线;PAD 图即问题分析图(Problem Analysis Diagram),它是一种由左往右展开的二维树型结构;程序流程图用于描述问题解决的过程和步骤,其中方框表示处理步骤、菱形框表示逻辑判断、箭头表示控制流向;E-R 图即实体一联系图(Entity Relationship Diagram),用来描述现实世界的概念模型,构成元素有实体、属性和联系,分别用矩形、椭圆形和菱形表示。本题答案为 C。29.数据库管理系统是( )。(分数:2.00)A.操作系统的一部分B.在操作系统支持下的系统软件 C.一种编译系统D.一种操作系统解析:解析 数据库管理系统是数据库的机构,它是一种系

46、统软件,负责数据库中的数据组织、数据操纵、数据维护、控制及保护和数据服务等。30.下列枚举类型的定义中,包含枚举值 3 的是( )。(分数:2.00)A.enum testRED,YELLOW,BLUE,BLACK; B.enum testRED,YELLOW=4,BLUE,BLACK;C.enum testRED=-1,YELLOW,BLUE,BLACK;D.enum testRED,YELLOW=6,BLUE,BLACK;解析:解析 本题主要考查枚举类型的定义,其中几个枚举值全部未赋常量值时,它们自左至右分别与整数 0,1,n-1 对应。由此可判断本题答案。31.有如下程序:#includ

47、eiostreamusing namespace std;class Publication/出版物类char name30;public:Publication(char*name=“未知名称“)strcpy(thisname,name);const char *getName()constreturn name;virtual const char *getType()constreturn“未知类型“;class Book:public Publication/书类public:Book(char *name):Publication(name)virtual const char *getType()constreturn“书“

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