欢迎来到麦多课文档分享! | 帮助中心 海量文档,免费浏览,给你所需,享你所想!
麦多课文档分享
全部分类
  • 标准规范>
  • 教学课件>
  • 考试资料>
  • 办公文档>
  • 学术论文>
  • 行业资料>
  • 易语言源码>
  • ImageVerifierCode 换一换
    首页 麦多课文档分享 > 资源分类 > DOC文档下载
    分享到微信 分享到微博 分享到QQ空间

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

    • 资源ID:1324659       资源大小:77.50KB        全文页数:33页
    • 资源格式: DOC        下载积分:5000积分
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    二维码
    微信扫一扫登录
    下载资源需要5000积分(如需开发票,请勿充值!)
    邮箱/手机:
    温馨提示:
    如需开发票,请勿充值!快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如需开发票,请勿充值!如填写123,账号就是123,密码也是123。
    支付方式: 支付宝扫码支付    微信扫码支付   
    验证码:   换一换

    加入VIP,交流精品资源
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

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

    1、二级 C+笔试-427 及答案解析(总分:100.00,做题时间:90 分钟)一、选择题(总题数:35,分数:70.00)1.下列语言不属于高级语言的是( )。AC 语言 B机器语言CFORTRAN 语言 DC+语言(分数:2.00)A.B.C.D.2.数据库系统的核心是( )。A数据模型 B数据库管理系统C软件工具 D数据库(分数:2.00)A.B.C.D.3.下列叙述中正确的是( )。A在模块化程序设计中,一个模块应尽量多的包括与其他模块联系的信息B在自顶向下、逐步细化的设计过程中,首先应设计解决问题的每一个细节C在模块化程序设计中,一个模块内部的控制结构也要符合结构化原则D在程序设计过程

    2、中,不能同时采用结构化程序设计方法与模块化程序设计方法(分数:2.00)A.B.C.D.4.下列叙述中正确的是( )。A线性链表中的各元素在存储空间中的位置必须是连续的B线性链表中的表头元素一定存储在其他元素的前面C线性链表中的各元素在存储空间中的位置不一定是连续的,但表头元素一定存储在其他元素的前面D线性链表中的各元素在存储空间中的位置不一定是连续的,且各元素的存储顺序也是任意的(分数:2.00)A.B.C.D.5.以下关于数据库系统的叙述中,正确的是( )。A数据库只存在数据项之间的联系B数据库的数据之间和记录之间都存在着联系C数据库的数据之间和记录之间都不存在着联系D数据库的数据项之间无

    3、联系,记录之间存在联系(分数:2.00)A.B.C.D.6.调试程序过程中主要会发现三类错误,不包括( )。A语法错误 B逻辑错误C例外错误 D常规错误(分数:2.00)A.B.C.D.7.关系 R和关系 S的并运算是( )。A由关系 R和关系 S的所有元组合并组成的集合,再删去重复的元组B由属于 R而不属于 S的所有元组组成的集合C由既属于 R又属于 S的元组组成的集合D由 R和 S的元组连接组成的集合(分数:2.00)A.B.C.D.8.在结构化程序设计思想提出之前,在程序设计中强调程序的效率。而结构化程序设计思想提出之后与程序的效率相比,人们更重视程序的( )。A安全性 B一致性C可理解

    4、性 D合理性(分数:2.00)A.B.C.D.9.下述内容中( )不属于软件工程管理的范畴。A软件管理学 B软件心理学C软件工程经济 D软件工程环境(分数:2.00)A.B.C.D.10.为了使模块尽可能独立,要求( )。A模块的内聚程序要尽量高,且各模块间的耦合程度要尽量强B模块的内聚程度要尽量高,且各模块间的耦合程度要尽量弱C模块的内聚程度要尽量低,且各模块间的耦合程度要尽量弱D模块的内聚程度要尽量低,且各模块间的耦合程度要尽量强(分数:2.00)A.B.C.D.11.为了取代 C中带参数的宏,在 C+中使用( )。A重载函数 B内联函数C递归函数 D友元函数(分数:2.00)A.B.C.

    5、D.12.函数定义为 Fun(int BFun(20+n);CFun(n); DFun((分数:2.00)A.B.C.D.13.在一个 C+源程序文件中定义的全局变量的有效范围是( )。A该 C+程序的所有源程序文件B本源程序文件的全部范围C从定义变量的位置开始到本源程序文件结束D函数内部全部范围(分数:2.00)A.B.C.D.14.若有以下程序:#inclcude iostream.hvoid main()int i;int a33=1,2,3,4,5,6,7,8,9;for(i=0;i3;i+)couta2-ii“;coutendl;执行后的输出结果是( )。A159 B753C357

    6、D591(分数:2.00)A.B.C.D.15.下列关于 C+函数的描述中正确的是( )。A主函数是程序的入口,它由用户定义的函数调用B函数在调用之前必须先被声明C每个用户定义的函数只能被其他函数调用一次D函数是 C+中面向对象程序设计框架的基本组成单元(分数:2.00)A.B.C.D.16.有如下程序:#include iostreamusing namespace std;int main()int a6=23,15,64,33,40,58;int s1,s2;s1=s2=a0;for(int *p=a+1;pa+6;p+)if(s1*p) s1=*p;if(s2*p) s2=*p;cou

    7、ts1+s2endl;return 0;运行时的输出结果是( )。A23 B58C79 D64(分数:2.00)A.B.C.D.17.针对数组定义 int data10;,下列表述中错误的是( )。A用*data 可访问到数组的首元素B用 data9可访问到数组的末元素C用 data10访问数组元素会超出数组边界Ddata 共有 10个元素,其首元素是 data1(分数:2.00)A.B.C.D.18.对于语句 cinx,中的各个组成部分,下列叙述中错误的是( )。A“cin”是一个输出流对象 B“;”的作用是表示语句结束C“x”是一个变量 D“”称作提取运算符(分数:2.00)A.B.C.D

    8、.19.下列关于动态联编的描述中,错误的是( )。A动态联编是以虚函数为基础的B动态联编是在运行时确定所调用的函数代码的C动态联编调用函数操作是指向对象的指针或对象引用D动态联编是在编译时确定操作函数的(分数:2.00)A.B.C.D.20.下面程序的输出结果是( )。#include iostreamusing namespace std;void main()int s;for(int k=2;k6;k+=2)s=1;for(int j=k;j6;j+) s+=j;coutsendl;A9 B1C11 D10(分数:2.00)A.B.C.D.21.下面是类 MyClass的定义,对定义中语

    9、句描述正确的是( )。class MyClasspublic:void MyClass(int a) X=a; /int f(int a,int b) /X=a;Y=b;int f(inta,intb,int c=0) /X=a;Y=b;Z=c;static void g() X=10; /private:int X,Y,Z;A语句是类 MyClass的构造函数定义B语句和语句实现类成员函数的重载C语句实现对类成员变量 X的更新操作D语句和都不正确(分数:2.00)A.B.C.D.22.下面各派生类的定义中,正确的是( )。AclassA类的成员;class B:A public类 B中新增的

    10、成员);BclassA类的成员;private class B:A类 B中新增的成员);CclassA类的成员;class B:protected A类 B中新增的成员);DclassA类的成员;class B:A类 B中新增的成员);(分数:2.00)A.B.C.D.23.有如下程序:#include iostreamusing namespace std;class Basepublic:Base()cout“BB“;f();Void f()cout“Bf“;class Derived: public Basepublic:Derived() cout“DD“;void f() cout“

    11、Df“;int main() Derived d;return 0;执行上面的程序将输出( )。ABBBfDD BBBDfDDDfCDD DDDBBBf(分数:2.00)A.B.C.D.24.下列函数模板的定义中,合法的是( )。Atemplate typename TT abs(T x)(return x0? -x:x;Btemplate class TT abs(T x)return x0? -x:x;Ctemplate T class T abs(T x)return x0? -x:x;Dtemplate T abs(T x)return x0? -x:x;(分数:2.00)A.B.C.

    12、D.25.下列描述中错误的是( )。A派生类可以作为基类派生其他的子类B派生类继承基类的所有数据成员C派生类可以有多个基类D派生类不能继承一些函数成员(分数:2.00)A.B.C.D.26.对于 int *pa5;的描述,( )是正确的。Apa 是一个指向数组的指针,所指向的数组是 5个 int型元素Bpa 是一个指向某数组中第 5个元素的指针,该元素是 int型变量Cpa5表示某个数组的第 5个元素的值Dpa 是一个具有 5个元素的指针数组,每个元素是一个 int型指针(分数:2.00)A.B.C.D.27.有如下程序:#include iostreamusing namespace std

    13、;class testprivate:int a;public:test() cout“constructor“endl;test(int a)coutaendl;test(const testcout“copy constructor“endl;test() cout“destructor“endl;int main()test A(3);return 0;运行时输出的结果是( )。A3BconstructordestructorCcopyconstructorDestructorD3destructor(分数:2.00)A.B.C.D.28.下面程序的运行结果是( )。#include i

    14、ostream.hclass Sampleint x,y;public:Sample() x=y=0; Sample(int a,int b) x=a;y=b; void disp()cout“x=“x“,y=“yendl;void main()Sample s(2,3), *p=p-disp();Ax=1,y=2 Bx=2,y=4Cx=2,y=3 Dx=4,y=3(分数:2.00)A.B.C.D.29.有如下的程序:#include cstring.h#include iostream.husing namespace std;class MyStringpublic:MyString(co

    15、nst char*s);MyString() deletedata; protected:unsigned len;char*data;MyString:MyString(const char *s)len=strlen(s);data=new charlen+1;strcpy(data,s);int main()MyString a(“C+Programing“);MyString b(a);return 0;在运行上面的程序时出错,出错的原因是( )。A构造函数的实参不允许是本类的对象B没有定义实现深层复制(深拷贝)的复制构造函数C构造对象 a时实参与形参类型不符D系统不能生成默认的复制构

    16、造函数(分数:2.00)A.B.C.D.30.有如下程序:#include iostreamusing namespace std;class Pointpublic:static int number;public:Point() number+;Point() number-;int Point:number=0;void main()Point *ptr;Point A,B;Point* ptr_point=new Point3;ptr=ptr_point;Point C;coutPoint:numberendl;delete ptr;运行时输出的结果是A3 B4C6 D7(分数:2.0

    17、0)A.B.C.D.31.下列描述中,错误的是( )。A公有继承时基类中的公有成员在派生类中仍是公有成员B公有继承时基类中的保护成员在派生类中仍是保护成员C保护继承时基类中的公有成员在派生类中仍是公有成员D保护继承时基类中的保护成员在派生类中仍是保护成员(分数:2.00)A.B.C.D.32.若有以下程序:#include iostreamusing namespace std;classAprivate:int a;public:void seta(int x)a=x;void showa()couta“,“;class Bprivate:int b;public:void setb(int

    18、 x)b=x;void showb()coutb“,“;class C:public A,private Bprivate:int c;public:void setc(int x,int y,int z)c=z;seta(x);setb(y);void showc()showa();showb();coutcendl;int main()C c;c.setc(1,2,3);c.showc();return 0;程序执行后的输出结果是( )。A1,2,3 B1,1,1C2,2,2 D3,3,3(分数:2.00)A.B.C.D.33.以下程序的输出结果是( )。#include iostream

    19、.hVoid main()int a33=1,2),3,4,5,6i,j,s=0;for(i=1;i3;i+)for(j=0;ji;j+) s+=aij;coutsendl;A14 B19C20 D21(分数:2.00)A.B.C.D.34.设有如下程序:#include iostream.hclass Apublic:int i;display()cout“class A/n“;class Bpublic:int i;display()cout“class B/n“;class C:public:A, public:Bint j;public:int i;show()j=i*i;displa

    20、y();void main()C demo;demo.show();则主程序运行时,将( )。A因为变量 i的重复定义而报错B因为对象 demo间接调用 display函数时产生歧义性而报错C因为类定义的语法错误而不能运行D没有语法错误,能够正常输出结果(分数:2.00)A.B.C.D.35.有如下程序:#include iostreamusing namespace std;class BASEpublic:BASE()cout“BASE“;class DERIVED:public BASEpublic:DERIVED()f cout“DERIVED“;int main() DERIVED

    21、x;return 0;执行后的输出结果是( )。ABASE BDERIVEDCBASEDERIVED DDERIVEDBASE(分数:2.00)A.B.C.D.二、填空题(总题数:15,分数:30.00)36.某二叉树中度为 2的结点有 n个,则该二叉树中有 1 个叶子结点。(分数:2.00)填空项 1:_37.软件生存周期包括软件定义、 1、软件使用和维护三个阶段。(分数:2.00)填空项 1:_38.在计算机软件系统的体系结构中,数据库管理系统位于用户和 1 之间。(分数:2.00)填空项 1:_39.数据结构分为逻辑结构和存储结构,树形结构属于 1 结构。(分数:2.00)填空项 1:_

    22、40.对长度为 n的线性表进行冒泡排序,最坏情况下需要比较的次数为 1。(分数:2.00)填空项 1:_41.静态数据成员在定义或说明时,要在前面加上关键字 1;静态成员函数的实现中,不能直接引用类中说明为非静态的成员。(分数:2.00)填空项 1:_42.设有定义语句:int a=12;,则表达式 a*=2+3的运算结果是 1。(分数:2.00)填空项 1:_43.下列程序的输出结果为_。#include iostream.hvoid main()int a=10,20,30,40,*pa=a;int *pb+;cout*paendl;(分数:2.00)填空项 1:_44.设置虚基类的目的是

    23、解决二义性问题,通过用关键字 1 表示虚基类。(分数:2.00)填空项 1:_45.有如下语句序列:int x=-10; while(+x)运行时 while循环体的执行次数为_。(分数:2.00)填空项 1:_46.已知数组 a中的元素个数为 n,下列语句的作用是将下标为 i的元素移动到下标为 i-1的单元,其中1in。例如,当 n=4,a中原有数据为 1,2,3,4 时,则移动后 a中元素变为 2,3,4,4。请将语句补充完整:for(int i=0;in-1;i+) ai=a_;(分数:2.00)填空项 1:_47.有如下程序:#include iostream.hvoid main()

    24、int x=2,y=3,a,b,c,d;a=(x+=-y);b=(x=+y);c=(x-!=y);d=(+xy-);coutabCdendl;则程序执行后变量 a,b,c,d的值分别是_。(分数:2.00)填空项 1:_48.下面程序的运行结果是_。#include iostream.hdouble fun(double a,double b,char c=*)double d;switch (c)case +:d=a+b;break;case -:d=a-b;break;case *:d=a*b;break;case /:d=a/b;break;returnd;void main()doub

    25、le d=1.0;d=d-fun(fun(2.5,3.5,+),fun(3,5),/);cout“d=“dendl;(分数:2.00)填空项 1:_49.在下面横线上填上适当的语句,完成程序。#include iostreamusing namespace std;class Baseint x;public:Base(int i)x=i;Base();class Derived: public Basepublic:_ /完成类 Derive构造函数的定义;int main()Derived Obj();return 0;(分数:2.00)填空项 1:_50.下列程序的输出结果是_。#inc

    26、lude iostreamusing namespace std;class basepublic:int n;base(int x)n=x;virtualvoid set(int m)n=m;coutn ;class deriveA:public basepublic:deriveA(int x):base(x)void set(int m) n+=m,coutn ;class deriveB:public basepublic:deriveB(int x):base(x)void set(int m) n+=m; coutn ;int main()deriveA.d1(1);deriveB

    27、.d2(3);base *pbase;pbase=pbase-set(1);pbase=pbase-set(2);return 0;(分数:2.00)填空项 1:_二级 C+笔试-427 答案解析(总分:100.00,做题时间:90 分钟)一、选择题(总题数:35,分数:70.00)1.下列语言不属于高级语言的是( )。AC 语言 B机器语言CFORTRAN 语言 DC+语言(分数:2.00)A.B. C.D.解析:2.数据库系统的核心是( )。A数据模型 B数据库管理系统C软件工具 D数据库(分数:2.00)A.B. C.D.解析:3.下列叙述中正确的是( )。A在模块化程序设计中,一个模块

    28、应尽量多的包括与其他模块联系的信息B在自顶向下、逐步细化的设计过程中,首先应设计解决问题的每一个细节C在模块化程序设计中,一个模块内部的控制结构也要符合结构化原则D在程序设计过程中,不能同时采用结构化程序设计方法与模块化程序设计方法(分数:2.00)A.B.C. D.解析:4.下列叙述中正确的是( )。A线性链表中的各元素在存储空间中的位置必须是连续的B线性链表中的表头元素一定存储在其他元素的前面C线性链表中的各元素在存储空间中的位置不一定是连续的,但表头元素一定存储在其他元素的前面D线性链表中的各元素在存储空间中的位置不一定是连续的,且各元素的存储顺序也是任意的(分数:2.00)A.B.C.

    29、D. 解析:5.以下关于数据库系统的叙述中,正确的是( )。A数据库只存在数据项之间的联系B数据库的数据之间和记录之间都存在着联系C数据库的数据之间和记录之间都不存在着联系D数据库的数据项之间无联系,记录之间存在联系(分数:2.00)A.B. C.D.解析:6.调试程序过程中主要会发现三类错误,不包括( )。A语法错误 B逻辑错误C例外错误 D常规错误(分数:2.00)A.B.C.D. 解析:7.关系 R和关系 S的并运算是( )。A由关系 R和关系 S的所有元组合并组成的集合,再删去重复的元组B由属于 R而不属于 S的所有元组组成的集合C由既属于 R又属于 S的元组组成的集合D由 R和 S的

    30、元组连接组成的集合(分数:2.00)A. B.C.D.解析:8.在结构化程序设计思想提出之前,在程序设计中强调程序的效率。而结构化程序设计思想提出之后与程序的效率相比,人们更重视程序的( )。A安全性 B一致性C可理解性 D合理性(分数:2.00)A.B.C. D.解析:9.下述内容中( )不属于软件工程管理的范畴。A软件管理学 B软件心理学C软件工程经济 D软件工程环境(分数:2.00)A.B.C.D. 解析:10.为了使模块尽可能独立,要求( )。A模块的内聚程序要尽量高,且各模块间的耦合程度要尽量强B模块的内聚程度要尽量高,且各模块间的耦合程度要尽量弱C模块的内聚程度要尽量低,且各模块间

    31、的耦合程度要尽量弱D模块的内聚程度要尽量低,且各模块间的耦合程度要尽量强(分数:2.00)A.B. C.D.解析:11.为了取代 C中带参数的宏,在 C+中使用( )。A重载函数 B内联函数C递归函数 D友元函数(分数:2.00)A.B. C.D.解析:12.函数定义为 Fun(int BFun(20+n);CFun(n); DFun((分数:2.00)A.B.C. D.解析:13.在一个 C+源程序文件中定义的全局变量的有效范围是( )。A该 C+程序的所有源程序文件B本源程序文件的全部范围C从定义变量的位置开始到本源程序文件结束D函数内部全部范围(分数:2.00)A.B.C. D.解析:1

    32、4.若有以下程序:#inclcude iostream.hvoid main()int i;int a33=1,2,3,4,5,6,7,8,9;for(i=0;i3;i+)couta2-ii“;coutendl;执行后的输出结果是( )。A159 B753C357 D591(分数:2.00)A.B. C.D.解析:15.下列关于 C+函数的描述中正确的是( )。A主函数是程序的入口,它由用户定义的函数调用B函数在调用之前必须先被声明C每个用户定义的函数只能被其他函数调用一次D函数是 C+中面向对象程序设计框架的基本组成单元(分数:2.00)A.B. C.D.解析:16.有如下程序:#inclu

    33、de iostreamusing namespace std;int main()int a6=23,15,64,33,40,58;int s1,s2;s1=s2=a0;for(int *p=a+1;pa+6;p+)if(s1*p) s1=*p;if(s2*p) s2=*p;couts1+s2endl;return 0;运行时的输出结果是( )。A23 B58C79 D64(分数:2.00)A.B.C. D.解析:17.针对数组定义 int data10;,下列表述中错误的是( )。A用*data 可访问到数组的首元素B用 data9可访问到数组的末元素C用 data10访问数组元素会超出数组

    34、边界Ddata 共有 10个元素,其首元素是 data1(分数:2.00)A.B.C.D. 解析:18.对于语句 cinx,中的各个组成部分,下列叙述中错误的是( )。A“cin”是一个输出流对象 B“;”的作用是表示语句结束C“x”是一个变量 D“”称作提取运算符(分数:2.00)A. B.C.D.解析:19.下列关于动态联编的描述中,错误的是( )。A动态联编是以虚函数为基础的B动态联编是在运行时确定所调用的函数代码的C动态联编调用函数操作是指向对象的指针或对象引用D动态联编是在编译时确定操作函数的(分数:2.00)A.B. C.D.解析:20.下面程序的输出结果是( )。#include

    35、 iostreamusing namespace std;void main()int s;for(int k=2;k6;k+=2)s=1;for(int j=k;j6;j+) s+=j;coutsendl;A9 B1C11 D10(分数:2.00)A.B.C.D. 解析:21.下面是类 MyClass的定义,对定义中语句描述正确的是( )。class MyClasspublic:void MyClass(int a) X=a; /int f(int a,int b) /X=a;Y=b;int f(inta,intb,int c=0) /X=a;Y=b;Z=c;static void g()

    36、X=10; /private:int X,Y,Z;A语句是类 MyClass的构造函数定义B语句和语句实现类成员函数的重载C语句实现对类成员变量 X的更新操作D语句和都不正确(分数:2.00)A.B.C.D. 解析:22.下面各派生类的定义中,正确的是( )。AclassA类的成员;class B:A public类 B中新增的成员);BclassA类的成员;private class B:A类 B中新增的成员);CclassA类的成员;class B:protected A类 B中新增的成员);DclassA类的成员;class B:A类 B中新增的成员);(分数:2.00)A.B.C. D

    37、.解析:23.有如下程序:#include iostreamusing namespace std;class Basepublic:Base()cout“BB“;f();Void f()cout“Bf“;class Derived: public Basepublic:Derived() cout“DD“;void f() cout“Df“;int main() Derived d;return 0;执行上面的程序将输出( )。ABBBfDD BBBDfDDDfCDD DDDBBBf(分数:2.00)A. B.C.D.解析:24.下列函数模板的定义中,合法的是( )。Atemplate ty

    38、pename TT abs(T x)(return x0? -x:x;Btemplate class TT abs(T x)return x0? -x:x;Ctemplate T class T abs(T x)return x0? -x:x;Dtemplate T abs(T x)return x0? -x:x;(分数:2.00)A. B.C.D.解析:25.下列描述中错误的是( )。A派生类可以作为基类派生其他的子类B派生类继承基类的所有数据成员C派生类可以有多个基类D派生类不能继承一些函数成员(分数:2.00)A.B. C.D.解析:26.对于 int *pa5;的描述,( )是正确的。

    39、Apa 是一个指向数组的指针,所指向的数组是 5个 int型元素Bpa 是一个指向某数组中第 5个元素的指针,该元素是 int型变量Cpa5表示某个数组的第 5个元素的值Dpa 是一个具有 5个元素的指针数组,每个元素是一个 int型指针(分数:2.00)A.B.C.D. 解析:27.有如下程序:#include iostreamusing namespace std;class testprivate:int a;public:test() cout“constructor“endl;test(int a)coutaendl;test(const testcout“copy construc

    40、tor“endl;test() cout“destructor“endl;int main()test A(3);return 0;运行时输出的结果是( )。A3BconstructordestructorCcopyconstructorDestructorD3destructor(分数:2.00)A.B.C.D. 解析:28.下面程序的运行结果是( )。#include iostream.hclass Sampleint x,y;public:Sample() x=y=0; Sample(int a,int b) x=a;y=b; void disp()cout“x=“x“,y=“yendl

    41、;void main()Sample s(2,3), *p=p-disp();Ax=1,y=2 Bx=2,y=4Cx=2,y=3 Dx=4,y=3(分数:2.00)A.B.C. D.解析:29.有如下的程序:#include cstring.h#include iostream.husing namespace std;class MyStringpublic:MyString(const char*s);MyString() deletedata; protected:unsigned len;char*data;MyString:MyString(const char *s)len=str

    42、len(s);data=new charlen+1;strcpy(data,s);int main()MyString a(“C+Programing“);MyString b(a);return 0;在运行上面的程序时出错,出错的原因是( )。A构造函数的实参不允许是本类的对象B没有定义实现深层复制(深拷贝)的复制构造函数C构造对象 a时实参与形参类型不符D系统不能生成默认的复制构造函数(分数:2.00)A.B. C.D.解析:30.有如下程序:#include iostreamusing namespace std;class Pointpublic:static int number;p

    43、ublic:Point() number+;Point() number-;int Point:number=0;void main()Point *ptr;Point A,B;Point* ptr_point=new Point3;ptr=ptr_point;Point C;coutPoint:numberendl;delete ptr;运行时输出的结果是A3 B4C6 D7(分数:2.00)A.B.C. D.解析:31.下列描述中,错误的是( )。A公有继承时基类中的公有成员在派生类中仍是公有成员B公有继承时基类中的保护成员在派生类中仍是保护成员C保护继承时基类中的公有成员在派生类中仍是公

    44、有成员D保护继承时基类中的保护成员在派生类中仍是保护成员(分数:2.00)A.B.C. D.解析:32.若有以下程序:#include iostreamusing namespace std;classAprivate:int a;public:void seta(int x)a=x;void showa()couta“,“;class Bprivate:int b;public:void setb(int x)b=x;void showb()coutb“,“;class C:public A,private Bprivate:int c;public:void setc(int x,int

    45、y,int z)c=z;seta(x);setb(y);void showc()showa();showb();coutcendl;int main()C c;c.setc(1,2,3);c.showc();return 0;程序执行后的输出结果是( )。A1,2,3 B1,1,1C2,2,2 D3,3,3(分数:2.00)A. B.C.D.解析:33.以下程序的输出结果是( )。#include iostream.hVoid main()int a33=1,2),3,4,5,6i,j,s=0;for(i=1;i3;i+)for(j=0;ji;j+) s+=aij;coutsendl;A14

    46、B19C20 D21(分数:2.00)A. B.C.D.解析:34.设有如下程序:#include iostream.hclass Apublic:int i;display()cout“class A/n“;class Bpublic:int i;display()cout“class B/n“;class C:public:A, public:Bint j;public:int i;show()j=i*i;display();void main()C demo;demo.show();则主程序运行时,将( )。A因为变量 i的重复定义而报错B因为对象 demo间接调用 display函数时产生歧义性而报错C因为类定义的语法错误而不能运行D没有语法错误,能够正常输出结果(分数:2.00)A.B.


    注意事项

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




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

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

    收起
    展开