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

    【计算机类职业资格】二级C++分类模拟268及答案解析.doc

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

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

    【计算机类职业资格】二级C++分类模拟268及答案解析.doc

    1、二级 C+分类模拟 268及答案解析(总分:60.50,做题时间:90 分钟)一、选择题(总题数:35,分数:60.50)1.下面程序的输出是 main() int x=100, a=10, b=20, ok1=5, ok2=0; if(ab) if(b! =15) if( ! ok1) else if(ok2) x= 10 x=-1 coutxend1; (分数:2.00)A.-1B.0C.1D.不确定的值2.下面程序的运行结果是 _ 。 #includeiostream.h int x=5; int fun(int a) int c; C=X*a; retum c; void main()

    2、 int x=3,a=4; x=x+fun(a); cout“x“”Xendl; (分数:2.00)A.x=15B.x=17C.x=23D.x=253.执行下列语句段后 int n=0;for(int i=70;i0;i-=3)n+; n的值是_。(分数:2.00)A.23B.24C.25D.714.下列关于栈的叙述正确的是_。(分数:1.00)A.栈按“先进先出”组织数据B.栈按“先进后出”组织数据C.只能在栈底插入数据D.不能删除数据5.有如下程序: #includeiostream #includecstring using namespace std; class XCF int a;

    3、 public: XCF(int aa=0):a(aa)cout“1“; XCF(XCFcout“2“; XCF()couta; int Geta()return a; ; int main() XCF d1(5),d2(d1); XCF*pd=new XCF(8); coutpd-Geta(); delete pd; return 0; 运行时的输出结果是_。(分数:3.00)A.1215588B.1218855C.12185D.1285126.软件生命周期是指_。(分数:1.00)A.软件产品从提出、实现、使用维护到停止使用退役的过程B.软件从需求分析、设计、实现到测试完成的过程C.软件的

    4、开发过程D.软件的运行维护过程7.下列说法中错误的是(分数:1.00)A.公有继承时基类中的 public成员在派生类中仍是 public成员B.私有继承时基类中的 protecte成员在派生类中仍是 protected成员C.私有继承时基类中的 public成员在派生类中是 private成员D.保护继承时基类中的 public成员在派生类中是 protected成员8.有如下类定义: class AA int a; public: int getRef()constreturn / int getValue()constreturn a; / void set(int n)consta=n

    5、; / friend void show(AA aa)constcouta;) / ; 其中的四个函数定义中正确的是_。(分数:2.00)A.B.C.D.9.在软件开发中,需求分析阶段产生的主要文档是_。(分数:1.00)A.软件集成测试计划B.软件详细设计说明书C.用户手册D.软件需求规格说明书10.在 32位的计算机中,一个 char型数据所占的内存长度的字节是_。(分数:2.50)A.4B.1C.2D.811.程序调试的任务是_。(分数:2.50)A.设计测试用例B.验证程序的正确性C.发现程序中的错误D.诊断和改正程序中的错误12.有如下程序: #includeiostream usi

    6、ng 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; 运行时的输出结果是_。(分数:2.50)A.23B.58C.64D.7913.若一个函数的原型为“int*Xfun1(int x,int ”,则该函数的返回值类型为_。(分数:2.00)A.int *B.intC.int class TestClass public: virtual voi

    7、d funl() cout“fun1TestClass“; virtual void fun2() cout“fun2TestClass“;); class TestClassl:public TestClass void fun() cout“fun1TestClassl“; int main() Tc stClass obj1,*p; TestClass1 obj2; p=obj2; p-fun1(); p-fun2(); return 0; 该程序执行后的输出结果是_。(分数:1.00)A.fun1TestClass1 fun2TcstClassB.fun1TestClass1 fun2

    8、TestClass1C.fun1TestClass fun2TestClassD.fun1TestClass fun2TestClass116.在公有派生情况下,有关派生类对象和基类对象的关系,下列叙述不正确的是_。(分数:1.00)A.派生类的对象可以赋给基类的对象B.派生类的对象可以初始化基类的引用C.派生类的对象可以直接访问基类中的成员D.派生类的对象的地址可以赋给指向基类的指针17.下列对于软件测试的描述中正确的是_。(分数:2.50)A.软件测试的目的是证明程序是否正确B.软件测试的目的是使程序运行结果正确C.软件测试的目的是尽可能多地发现程序中的错误D.软件测试的目的是使程序符合结

    9、构化原则18.以下不能正确定义二维数组的选项是 _ 。(分数:2.00)A.int a22=1,2;B.int a2=1,2,3,4);C.int a22=1,2,3;D.int a2=1,2,3,4;19.表示在输出时显示小数位,和在文件输入时判断文件尾的函数分别是 _ 。(分数:1.00)A.showbase()和 eof()B.showpoint()和 eof()C.showpoint()和 bad()D.showpoint()和 good()20.下面有关重载函数的说法中,正确的是 _ 。(分数:1.00)A.重载函数必须具有不同的返回值类型B.重载函数形参个数必须不同C.重载函数必须

    10、有不同的形参列表D.重载函数名可以不同21.设有定义语句 int(*f)(int);,则下列叙述正确的是_。(分数:2.50)A.f是基类型为 int的指针变量B.f是指向函数的指针变量,该函数具有一个 int类型的形参C.f是指向 int类型一维数组的指针变量D.f是函数名,该函数的返回值是其类型为 int类型的地址22.下面程序的输出结果是( )。 #include iostream using namespace std; void main() int s; for(int k=2;k6;k+=2) s=1; for(int j=k; j6;j+) s+=j; coutsend1;(分

    11、数:2.00)A.9B.1C.11D.1023.有下列程序: #include stdio.h void main() int s12=1,2,3,4,4,3,2,1,1,1,2,3,c5=0,i; for(i=0;i12;i+)csi+; for(i=1;i5;i+)printf(“%d“,ci); printf(“/n“) (分数:2.50)A.1 2 3 4B.2 3 4 4C.4 3 3 2D.1 1 2 324.数据库系统的核心是_。(分数:1.00)A.数据模型B.数据库管理系统C.数据库D.数据库管理员25.关于 this指针的说明不正确的是(分数:1.00)A.不能在程序中修改

    12、 this指针B.this指针可以给其他指针赋值,但不能修改 this指针C.静态成员函数中没有 this指针D.this指针可以被赋值26.算法的空间复杂度是指_。(分数:2.50)A.算法在执行过程中所需要的计算机存储空间B.算法所处理的数据量C.算法程序中的语句或指令条数D.算法在执行过程中所需要的临时工作单元数27.有如下程序: #include iostream using namespace std; int main() int *p; *p=9; cout“The value at p:“*p; return 0; 编译运行程序将出现的情况是 _ 。(分数:2.00)A.编译时

    13、出现语法错误,不能生成可执行文件B.运行时一定输出:The value at p:9C.运行时一定输出:The value at p:*9D.运行时有可能出错28.下列选项中,错误的 C+表达式是_。(分数:1.00)A.a+B.“b“=10C.double(3/5)D.x+!=3|y29.要利用 C+流实现输入/输出的各种格式控制中,必须在持续中包含的头文件是_。(分数:2.50)A.fstreamB.istreamC.ostreamD.iomanip30.若有以下程序: #include iostream using namespace std; class Base private: i

    14、nt a,b; public: Base(int x, int y) a=x; b=y; void show() couta“, “bend1; ; class Derive : public Base private: int c, d; public: Derive(int x, int y, int z,int m):Base(x,y) c=z; d=m; void show() coutc“, “dend1; ; int main ( ) Base b(50,50) ,*pb; Derive d(10,20,30,40); pb= pb-show ); return 0; (分数:1.

    15、00)A.10,20B.30,40C.20,30D.50,5031.有如下类定义: class Point int x_,y_; public: Point():x_(0),y_(0) Point(int x,int y=0):x_(x),y_(y) ; 若执行语句 Point a(2),b3,*c4; 则 Point类的构造函数被调用的次数是_。(分数:2.00)A.2次B.3次C.4次D.5次32.下列有关继承和派生的叙述中,正确的是_。(分数:1.00)A.如果一个派生类公有继承其基类,则该派生类对象可以访问基类的保护成员B.派生类的成员函数可以访问基类的所有成员C.基类对象可以赋值给派

    16、生类对象D.如果派生类没有实现基类的一个纯虚函数,则该派生类是一个抽象类33.若已定义的函数有返回值,则以下关于该函数调用的叙述中错误的是_。(分数:1.00)A.函数调用可以作为独立的语句存在B.函数调用可以无返回值C.函数调用可以出现在表达式中D.函数调用可以作为一个函数的形参34.下列关于栈的叙述正确的是_。(分数:1.00)A.栈按“先进先出”组织数据B.栈按“先进后出”组织数据C.只能在栈底插入数据D.不能删除数据35.有如下程序: #includeiostream using namespace std; class A public: A(int i):rl(i) void pr

    17、int()cout“E“r1“-“; void print()constcout“C“r1*r1“-“; private: int rl; ; int main() A al(2); const A a2(4); a1.print(); a2.print(); return 0; 运行时的输出结果是_。(分数:2.00)A.运行时出错B.E2-C16-C.C4-C16-D.E2-E4-二级 C+分类模拟 268答案解析(总分:60.50,做题时间:90 分钟)一、选择题(总题数:35,分数:60.50)1.下面程序的输出是 main() int x=100, a=10, b=20, ok1=5

    18、, ok2=0; if(ab) if(b! =15) if( ! ok1) else if(ok2) x= 10 x=-1 coutxend1; (分数:2.00)A.-1 B.0C.1D.不确定的值解析:解析 本题考察订语句的嵌套,else 总是与最近的那个 if配对,只要考生按照逻辑表达式的值进行细心判断就可以得到正确的答案。考生需要注意的是,在 C+语言中,0 表示假,非 0即为真,因此可以用数字作为逻辑判断的依据。2.下面程序的运行结果是 _ 。 #includeiostream.h int x=5; int fun(int a) int c; C=X*a; retum c; void

    19、 main() int x=3,a=4; x=x+fun(a); cout“x“”Xendl; (分数:2.00)A.x=15B.x=17C.x=23 D.x=25解析:3.执行下列语句段后 int n=0;for(int i=70;i0;i-=3)n+; n的值是_。(分数:2.00)A.23B.24 C.25D.71解析:4.下列关于栈的叙述正确的是_。(分数:1.00)A.栈按“先进先出”组织数据B.栈按“先进后出”组织数据 C.只能在栈底插入数据D.不能删除数据解析:解析 栈是按“先进后出”的原则组织数据的,数据的插入和删除都在栈顶进行操作。5.有如下程序: #includeiostr

    20、eam #includecstring using namespace std; class XCF int a; public: XCF(int aa=0):a(aa)cout“1“; XCF(XCFcout“2“; XCF()couta; int Geta()return a; ; int main() XCF d1(5),d2(d1); XCF*pd=new XCF(8); coutpd-Geta(); delete pd; return 0; 运行时的输出结果是_。(分数:3.00)A.1215588B.1218855 C.12185D.128512解析:解析 在这个程序中在建立对象

    21、d1(5)时,调用构造函数 XCF(int aa=0):a(aa)cout“1“;),输出 1;在建立 d2(d1)时,调用拷贝构造函数 XCF(XCFcout“2“;,输出 2;在建立 new XCF(8)对象时,调用构造函数 XCF(int aa=0):a(aa)cout“1“;,输出 1;语句 coutpd-Geta()的功能是输出 8;语句 delete pd;调用析构函数XCF(),输出 8;当退出程序时,分别释放对象 d2、d1,输出 55。6.软件生命周期是指_。(分数:1.00)A.软件产品从提出、实现、使用维护到停止使用退役的过程 B.软件从需求分析、设计、实现到测试完成的过

    22、程C.软件的开发过程D.软件的运行维护过程解析:解析 通常,将软件产品从提出、实现、使用维护到停止使用退役的过程称为软件生命周期。也就是说,软件产品从考虑其概念开始,到该软件产品不能使用为止的整个时期都属于软件生命周期。7.下列说法中错误的是(分数:1.00)A.公有继承时基类中的 public成员在派生类中仍是 public成员B.私有继承时基类中的 protecte成员在派生类中仍是 protected成员 C.私有继承时基类中的 public成员在派生类中是 private成员D.保护继承时基类中的 public成员在派生类中是 protected成员解析:8.有如下类定义: class

    23、 AA int a; public: int getRef()constreturn / int getValue()constreturn a; / void set(int n)consta=n; / friend void show(AA aa)constcouta;) / ; 其中的四个函数定义中正确的是_。(分数:2.00)A.B. C.D.解析:解析 此题考查了常成员函数和友元函数的概念。选项 A中,getRef()函数的返回值和函数函数类犁不符,故错误:C 选项中 set()常成员函数改变了数据成员的值,这是不允许的;D 选项中 show()函数被同时定义成友元函数和常成员函数是

    24、错误的。9.在软件开发中,需求分析阶段产生的主要文档是_。(分数:1.00)A.软件集成测试计划B.软件详细设计说明书C.用户手册D.软件需求规格说明书 解析:解析 需求分析阶段的工作可以概括为:需求获取、需求分析、编写需求规格说明书、需求评审四个方面。所以选择 D。10.在 32位的计算机中,一个 char型数据所占的内存长度的字节是_。(分数:2.50)A.4B.1 C.2D.8解析:解析 在 32位的计算机中,一个 char型数据所占的内存长度的字节是 1。11.程序调试的任务是_。(分数:2.50)A.设计测试用例B.验证程序的正确性C.发现程序中的错误D.诊断和改正程序中的错误 解析

    25、:解析 程序调试的任务是诊断和改正程序中的错误。它与软件测试不同,软件测试是尽可能多地发现软件中的错误。故选 D。12.有如下程序: #includeiostream using 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; 运行时的输出结果是_。(分数:2.50)A.23B.58C.64D.79 解析:解析 程序实现的功能为输出数组 a中最

    26、小值和最大值的和。for 循环结束后,变量 s1中存放最小值 15,变量 s2中存放最大值 64,输出 s1+s2的值为 79。13.若一个函数的原型为“int*Xfun1(int x,int ”,则该函数的返回值类型为_。(分数:2.00)A.int * B.intC.int ”的定义可知,其返回值为指向 int指针的函数。14.在 C+语言中函数返回值的类型是由_决定的。(分数:2.50)A.调用该函数时系统临时B.return语句中的表达式类型C.定义该函数时所指定的函数类型 D.调用该函数时的主调函数类型解析:解析 C+中函数 return语句中返回的类型应与函数定义指定的类型一致,即

    27、函数定义的类型即为函数应返回的类型。15.有如下程序: #includeiostream using namespace std; class TestClass public: virtual void funl() cout“fun1TestClass“; virtual void fun2() cout“fun2TestClass“;); class TestClassl:public TestClass void fun() cout“fun1TestClassl“; int main() Tc stClass obj1,*p; TestClass1 obj2; p=obj2; p-f

    28、un1(); p-fun2(); return 0; 该程序执行后的输出结果是_。(分数:1.00)A.fun1TestClass1 fun2TcstClass B.fun1TestClass1 fun2TestClass1C.fun1TestClass fun2TestClassD.fun1TestClass fun2TestClass1解析:解析 TestClass 力基类,TestClass1 是 TestClass的派生类。基类中的 funl和 fun2被定义为虚函数,C+规定,当一个成员函数被声明为虚函数后,其派生类中的同名函数都自动成为虚函数,所以派生类中的 fun1和 fun2也

    29、是虚函数。本题从 maln主函数入手,首先定义了 TestClass类型的对象 objl和指针 p,然后又定义了 TestClassl的对象 obj2。指针指向对象 obj2,然后调用其成员函数 funl(),即输出“funITestClass1”。16.在公有派生情况下,有关派生类对象和基类对象的关系,下列叙述不正确的是_。(分数:1.00)A.派生类的对象可以赋给基类的对象B.派生类的对象可以初始化基类的引用C.派生类的对象可以直接访问基类中的成员 D.派生类的对象的地址可以赋给指向基类的指针解析:解析 公有继承的派生类和基类是子类型的关系,所谓子类型是类型间一般和特殊的关系,即派生类是基

    30、类的子类型或者说基类的操作可以被用于操作派生类的对象。17.下列对于软件测试的描述中正确的是_。(分数:2.50)A.软件测试的目的是证明程序是否正确B.软件测试的目的是使程序运行结果正确C.软件测试的目的是尽可能多地发现程序中的错误 D.软件测试的目的是使程序符合结构化原则解析:解析 软件测试是保证软件质量的关键环节,直接影响着软件的质量评估。软件测试不仅要讲究策略,而且要讲究时效性。软件测试的目的是尽可能多地发现程序中的错误。18.以下不能正确定义二维数组的选项是 _ 。(分数:2.00)A.int a22=1,2;B.int a2=1,2,3,4); C.int a22=1,2,3;D.

    31、int a2=1,2,3,4;解析:19.表示在输出时显示小数位,和在文件输入时判断文件尾的函数分别是 _ 。(分数:1.00)A.showbase()和 eof()B.showpoint()和 eof() C.showpoint()和 bad()D.showpoint()和 good()解析:20.下面有关重载函数的说法中,正确的是 _ 。(分数:1.00)A.重载函数必须具有不同的返回值类型B.重载函数形参个数必须不同C.重载函数必须有不同的形参列表 D.重载函数名可以不同解析:解析 函数重载允许用同一个函数名定义多个函数。被重载的函数必须要有不同的形参列表。不可以根据函数返回值类型来重载

    32、函数。21.设有定义语句 int(*f)(int);,则下列叙述正确的是_。(分数:2.50)A.f是基类型为 int的指针变量B.f是指向函数的指针变量,该函数具有一个 int类型的形参 C.f是指向 int类型一维数组的指针变量D.f是函数名,该函数的返回值是其类型为 int类型的地址解析:解析 定义语句 int(*f)(int)中 f是指向函数的指针变量,该函数中也只有一个 int型的形参。22.下面程序的输出结果是( )。 #include iostream using namespace std; void main() int s; for(int k=2;k6;k+=2) s=1

    33、; for(int j=k; j6;j+) s+=j; coutsend1;(分数:2.00)A.9B.1C.11D.10 解析:23.有下列程序: #include stdio.h void main() int s12=1,2,3,4,4,3,2,1,1,1,2,3,c5=0,i; for(i=0;i12;i+)csi+; for(i=1;i5;i+)printf(“%d“,ci); printf(“/n“) (分数:2.50)A.1 2 3 4B.2 3 4 4C.4 3 3 2 D.1 1 2 3解析:解析 本题考查对 f。r 循环的使用,首先给两个数组赋值,第一个 for循环从 0开

    34、始循环 12次遍历 s教组的各个元素,数组将 s中的元素值作为 c数组中的下标,然后自加,使相应的值自加,当i=0,cs0+为 c1+,其值变为 1,当执行 i=1,2,11 后,c1、c2、c3、c4分别为4、3、3、2,故选项 C正确。24.数据库系统的核心是_。(分数:1.00)A.数据模型B.数据库管理系统 C.数据库D.数据库管理员解析:解析 数据库管理系统是数据库系统的核心。25.关于 this指针的说明不正确的是(分数:1.00)A.不能在程序中修改 this指针B.this指针可以给其他指针赋值,但不能修改 this指针C.静态成员函数中没有 this指针D.this指针可以被

    35、赋值 解析:解析 C+的 this指针是系统默认产生的一个指针,它是 const的,所以是不能够被改变,不能够被赋值的。26.算法的空间复杂度是指_。(分数:2.50)A.算法在执行过程中所需要的计算机存储空间 B.算法所处理的数据量C.算法程序中的语句或指令条数D.算法在执行过程中所需要的临时工作单元数解析:解析 算法的空间复杂度是指算法在执行过程中所需要的计算机存储空间。27.有如下程序: #include iostream using namespace std; int main() int *p; *p=9; cout“The value at p:“*p; return 0; 编译

    36、运行程序将出现的情况是 _ 。(分数:2.00)A.编译时出现语法错误,不能生成可执行文件B.运行时一定输出:The value at p:9C.运行时一定输出:The value at p:*9D.运行时有可能出错 解析:28.下列选项中,错误的 C+表达式是_。(分数:1.00)A.a+B.“b“=10 C.double(3/5)D.x+!=3|y解析:解析 选项 A中,使用后缀自增运算符,属于算术表达式,正确;选项 C中,将 3除以 5的结果转换为 double类型,属于算术表达式,正确;选项 D中,首先比较 x+是否不等于 3,返回 bool类型的结果,再与 y执行逻辑或运算,属于复合

    37、表达式,正确;选项 B中“b“是字符常量,不能作为赋值运算符的左值,语句不合法,答案为 B选项。29.要利用 C+流实现输入/输出的各种格式控制中,必须在持续中包含的头文件是_。(分数:2.50)A.fstreamB.istreamC.ostreamD.iomanip 解析:解析 该题考查的是预定义流对象,iostream:使用 cin、cout 的预定义流对象进行针对标准设备的 I/O操作,必须包含此头文件。iomanlp:使用 setw、fixed 等大多数操作符,必须包含此头文件。因此选项 D是正确的。30.若有以下程序: #include iostream using namespac

    38、e std; class Base private: int a,b; public: Base(int x, int y) a=x; b=y; void show() couta“, “bend1; ; class Derive : public Base private: int c, d; public: Derive(int x, int y, int z,int m):Base(x,y) c=z; d=m; void show() coutc“, “dend1; ; int main ( ) Base b(50,50) ,*pb; Derive d(10,20,30,40); pb=

    39、 pb-show ); return 0; (分数:1.00)A.10,20 B.30,40C.20,30D.50,50解析:解析 本题考核基类指针的使用。本题首先定义了一个基类 Base和一个由 Base派生出来的派生类 Derive。在主函数中,定义了一个基类 Base指针吵和基类对象 b,还定义了派生类 Derive的对象 do然后将派生类对象 d的地址赋值给指向基类 Base的指针 pb。由于 Derive是 Base的子类型,因此允许上述赋值。但这时指针 pb只能使用从基类 Base继承的成员,即当 pb指向 d对象时,pb-show 还是调用基类 Base的成员函数 show()。

    40、所以程序最后输出的是对象 d中对基类成员的初始化值,即 10,20。31.有如下类定义: class Point int x_,y_; public: Point():x_(0),y_(0) Point(int x,int y=0):x_(x),y_(y) ; 若执行语句 Point a(2),b3,*c4; 则 Point类的构造函数被调用的次数是_。(分数:2.00)A.2次B.3次C.4次 D.5次解析:解析 此题考查的是类的构造函数。构造函数在对象创建的时候由系统自动调用。在 Point a(2),b3,*c4语句中:a(2)是定义一个对象并传入构造函数 2,所以此时会调用以此构造函数

    41、;b3是定义一个包含 3个对象的数组,所以构造函数会被调用 3次;*c4定义的是 4个 Point类对象指针的数组,它并没有创建任何 Point对象,所以不调用构造函数。32.下列有关继承和派生的叙述中,正确的是_。(分数:1.00)A.如果一个派生类公有继承其基类,则该派生类对象可以访问基类的保护成员B.派生类的成员函数可以访问基类的所有成员C.基类对象可以赋值给派生类对象D.如果派生类没有实现基类的一个纯虚函数,则该派生类是一个抽象类 解析:解析 私有继承方式为基类的公用成员和保护成员在派生类中成了私有成员,其私有成员仍为基类私有,但派生类对象可以访问基类的保护成员,所以基类对象不能赋值给

    42、派生类对象。抽象类是指含有纯虚拟函数的类,所以选项 D正确。33.若已定义的函数有返回值,则以下关于该函数调用的叙述中错误的是_。(分数:1.00)A.函数调用可以作为独立的语句存在B.函数调用可以无返回值C.函数调用可以出现在表达式中D.函数调用可以作为一个函数的形参 解析:解析 本题考查函数的调用方式。函数的形参和实参具有以下特点:形参变量只有在被调用时才分配内存单元,在调用结束时,即刻释放分配的内存单元,因此,形参只有在函数内部有效,函数调用结束返回主调函数后则不能再使用该形参变量;实参可以是常量、变量、表达式、函数等,无论实参是何种类型的量,在进行函数调用时,它们都必须具有确定的值,以

    43、便把这些值传送给形参,因此应通过预先用赋值、输入等办法使实参获得确定值;实参和形参在数量上、类型上、顺序上应严格一致,否则会发生“类型不匹配”的错误;函数调用中发生的数据传送是单向的。即只能把实参的值传送给形参,而不能把形参的值反向地传送给实参。因此在函数调用过程中,形参的值发生改变,而实参中的值不会变化。34.下列关于栈的叙述正确的是_。(分数:1.00)A.栈按“先进先出”组织数据B.栈按“先进后出”组织数据 C.只能在栈底插入数据D.不能删除数据解析:解析 栈是按“先进后出”的原则组织数据的,数据的插入和删除都在栈顶进行操作。35.有如下程序: #includeiostream using namespace std; class A public: A(int i):rl(i) void print()cout“E“r1“-“; void print()constcout“C“r1*r1“-“; private: int rl; ; int main() A al(2); const A a2(4); a1.print(); a2.print(); return 0; 运行时的输出结果是_。(分数:2.00)A.运行时出错B.E2-C16- C.C4-C16-D.E2-E4-解析:


    注意事项

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




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

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

    收起
    展开