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

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

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

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

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

    1、二级 C+笔试-413 及答案解析(总分:84.00,做题时间:90 分钟)一、选择题(总题数:35,分数:62.00)1.当需要将一个函数 bool isnumber(char c)声明为内联函数时,则此内联函数的函数原型为( )。Aenum bool isnumber(char c); Bdefine bool isnumber(char c);Cinline bool isnumber(char c); Dextem bool isnumber(char c);(分数:2.00)A.B.C.D.2.已知在一个类体中包含如下函数原型:VOLUME operator-(VOLUME)cons

    2、t;,下列关于这个函数的叙述中,错误的是 A) 这是运算符一的重载运算符函数 B) 这个函数所重载的运算符是一个一元运算符 C) 这是一个成员函数 D) 这个函数不改变类的任何数据成员的值(分数:2.00)A.B.C.D.3.下列静态数据成员的特性中,错误的是 _。A) 静态数据成员的声明以关键字 static开头B) 静态数据成员必须在文件作用域内初始化C) 引导数据成员时,要在静态数据成员前加类名和作用域运算符D) 静态数据成员不是一个类所有对象共享的(分数:2.00)A.B.C.D.4.设有如下关系表:(分数:2.00)A.B.C.D.5.有如下程序:#includeiostream#i

    3、ncludeiomanipusing namespace std;int main( )Coutsetw(10) setfill(x)setprecision(8) left;Cout12.3456793_98765;return 0;若程厚的输出是 12.345679x98765xxxxx,则划线处缺失的部分是A) setw(10) B) setfill(x) C) setprecision(8) D) right(分数:2.00)A.B.C.D.6.如下程序运行时的输出结果是 #includeiostream using namespace std; class ONE int c; pu

    4、blic: ONE( ):c(0)eout1; ONE(int n):C(n)cout2; ; class TW0 ONE onel; ONE one2; public: TWO(int m):one2(m)eout3; ; int main( ) TWO t(4); return 0; A) 3 B) 23 C) 123 D) 213(分数:2.00)A.B.C.D.7.一个( )允许用户为类定义一种模式,使得类中的某些数据成员及某些成员函数的返回值能取任意类型。A函数模板 B模板甲数 C类模板 D模板类(分数:2.00)A.B.C.D.8.下列运算符中全都可以被友元函数重载的是A) 、/

    5、B) 、( ) 、newC) 、*、 D) 、*(分数:2.00)A.B.C.D.9.有以下程序:#include iostreamusing namespace std;int s=0;class samplestatic int n;public:sample (int i)n=i;static void add()s+=n;int sample:n=0;int main ()sample a(2) ,b(5);sample:add();coutsend1;return 0;执行后的输出结果是( )。A) 2 B) 5 C) 7 D) 3(分数:1.00)A.B.C.D.10.下列运算符中

    6、,不能重载的是A) ?: B) + C) - D) =(分数:2.00)A.B.C.D.11.数据的存储结构是指( )。A) 数据所占的存储空间B) 数据的逻辑结构在计算机中的存放形式C) 数据在计算机中的顺序存储方式D) 存储在计算机外存中的数据(分数:2.00)A.B.C.D.12.在软件生存周期中,能准确地确定软件系统必须做什么和必须具备哪些功能的阶段是( )。A概要设计 B详细设计C可行性分析 D需求分析(分数:2.00)A.B.C.D.13.由于常对象不能被更新,因此A) 通过常对象只能调用它的常成员函数B) 通过常对象只能调用静态成员函数C) 常对象的成员都是常成员D) 通过常对象

    7、可以调用任何不改变对象值的成员函数(分数:1.00)A.B.C.D.14.数据库系统的核心是A)数据模型 B)数据库管理系统 C)数据库 D)数据库管理员(分数:1.00)A.B.C.D.15.下列语句#include iostreamusing namespace std;void main()cout100.8989663;coutfixed100.8989663;coutscientific100.8989663;的输出结果为( )。A100.899 100.898966 1.008990e+002B100.8989663 100.898966 1.008990e+002C100.899

    8、 100.898966 1.008989e+002D100.899 100.8989663 1.008989e+002(分数:2.00)A.B.C.D.16.有如下程序: #include iostream using namespace std; class A public: A(int i)X=i; void dispa( )coutx,; private: int x; ; class B:public A public: B(int i):A(i+10)x=i; void dispb( )dispa( );coutxendl; private: int x; ; int main(

    9、) B b(2); b.dispb( ); return 0; 程序的输出结果是 A) 10,2 B) 12,10 C) 12,2 D) 2,2(分数:2.00)A.B.C.D.17.有如下程序:#includeiostreamusing namespace std;class sampleprivate:int x,y;public:sample(int i,int j)x=i;y=j;void disp()cout“displ“endl;void disp()constcout“disp2“endl;int main()const sample a(1,2);a.disp();return

    10、 0;该程序运行后的输出结果是( )。Adisp1 Bdisp2Cdisp1 disp2 D程序编译时出错(分数:2.00)A.B.C.D.18.执行语句:coutsetfill(*)setw(10)setfill(#)left123“OK“endl;return 0;)后将输出( )。A123*OK B123#OKC123*OK* D123#OK#(分数:2.00)A.B.C.D.19.有以下程序:#include iostreamusing namespace std;class samplepnvate:int x;static int y;public:sample(int a);st

    11、atic void print(sample s);sample:sample(int a)x=a;y+=x;void sample:print(sample s)cout“x=“s.x“,y=“yendl;int sample:y=0;int main()sample s1(10);sample s2(20);sample:print(s2);return 0;程序运行后的输出结果是( )。Ax=10,y=20 Bx=20,y=30 Cx=30,y=20 Dx=30,y=30(分数:2.00)A.B.C.D.20.在 C+中,打开一个文件,就是将这个文件与一个( )建立关联;关闭一个文件,就

    12、是取消这种关联。A类 B流 C对象 D结构(分数:1.00)A.B.C.D.21.要定义一个具有 5个元素的一维数组 vect,并使其各元素的初值依次是 30,50,-88,0 和 0,则下列定义语句中错误的是( )。Aintvect=30,50,-88; Bintvect=30,50,-88,0,0;Cintvect5=30,50,-88; Dint vect5=30,50,-88,0,0);(分数:2.00)A.B.C.D.22.在软件开发中,需求分析阶段产生的主要文档是( )。A软件集成测试计划 B软件详细设计说明书C用户手册 D软件需求规格说明书(分数:2.00)A.B.C.D.23.

    13、按照“后进后出”原则组织数据的数据结构是_ 。A) 队列 B) 栈C) 双向链表 D) 二叉树(分数:2.00)A.B.C.D.24.实现运行时的多态性要使用A) 重载函数 B) 析构函数 C) 构造函数 D) 虚函数(分数:2.00)A.B.C.D.25.算法分析的目的是A)找出数据结构的合理性 B)找出算法中输入和输出之间的关系C)分析算法的易懂性和可靠性 D)分析算法的效率以求改进(分数:1.00)A.B.C.D.26.下列表示纯虚函数的成员函数是( )。Avirtual int func(int); Bvoid func(int)=0;Cvirtual void func=0;Dvir

    14、tual void func(int)(分数:2.00)A.B.C.D.27.若有以下定义:int a=1,2,3,4,5,6,7char c1=b,c2=2;则数值不为 2的表达式是A) a1 B) d-c1C) a3-c2 D) c2-0(分数:1.00)A.B.C.D.28.下面程序的运行结果为( )。#includeiostreamusing namespace std;void main()int a=1;switch(a)case 1:cout“1“;case 2:cout“2“;break;default:cout“0“;A) 12 B) 120 C) 1 D) 10(分数:2.

    15、00)A.B.C.D.29.下列关于多继承二义性的描述中,错误的是( )。A) 一个派生类的两个基类中都有某个同名成员,在派生类中对这个成员的访问可能出现二义性。B) 解决二义性的最常用的方法是对成员名的限定法C) 基类和派生类中同时出现的同名函数,也存在二义性问题D) 一个派生类是从两个基类派生出来的,而这两个基类又有一个共同的基类,对该基类成员进行访问时,可能出现二义性(分数:1.00)A.B.C.D.30.有如下程序:#includeiostreamusing namespace std;class Testpublic:Test() n+=2;Test() n-=3;static in

    16、t getNum()return n;private:static int n;int Test:n=1;int main()Test *p=new Test;delete p;cout“n=“Test:getNum()endl;return 0;执行该程序的输出结果是( )。An=0 Bn=1 Cn=2 Dn=3(分数:2.00)A.B.C.D.31.设 a和 b均为 double型变量,且 a=55、b=25,则表达式(int)a+bb 的值是( )。A6.500000 B6C5.500000 D6.000000(分数:2.00)A.B.C.D.32.下列程序执行后,屏幕的输出是( )。#

    17、includeiostreamusing namespace std;void swap(int x,int y)int temp=x;x=y;y=temp;cout“x=“x“,y=“yend1;int main()int x=3,y=2;swap(x,y);cout“x=“x“,y=“yend1;return 0;A) x=3,y=2x=3,y=2B) x=2,y=3x=3,y=2C) x=2,y=3x=2,y=3D) x=3,y=2x=2,y=3(分数:2.00)A.B.C.D.33.下列关于类和对象的叙述中,错误的是A) 一个类只能有一个对象B) 对象是类的具体实例C) 类是对某一类对

    18、象的抽象D) 类和对象的关系是一种数据类型与变量的关系(分数:2.00)A.B.C.D.34.软件设计包括软件的结构、数据接口和过程设计,其中软件的过程设计是指( )。A模块间的关系 B系统结构部件转换成软件的过程描述C软件层次结构 D软件开发过程(分数:2.00)A.B.C.D.35.下列程序中,划线处正确的语句是( )。#includeiostream.hClass BasePublic:Void fun()cout“Base:fun“endl;Class Derived:public Basevoid fun()_ /显示调用基类的函数 fun()Cout“Derived:fun“end

    19、l;Afun() BBase.fun() CBase:fun() DBase-fun();(分数:1.00)A.B.C.D.二、填空题(总题数:15,分数:22.00)36.以下程序的输出结果是 。#includeiostream.hvoid fun( ) static int a0;a2;cout a “ “;void main( ) int cc;for(cc1;cc4;cc) fun( ) ;cout endl;(分数:2.00)填空项 1:_37.在 C+语言的结构化程序设计中,_是程序的基本组成单元;在 C+语言的面向对象设计框架中,_是程序的基本组成单元。(分数:1.00)填空项

    20、1:_38.在面向对象方法中,类的实例称为 1。(分数:1.00)填空项 1:_39.冒泡排序算法在最好的情况下的元素交换次数为 1。(分数:1.00)填空项 1:_40.设置虚基类的目的是_,通过_表示虚基类。(分数:1.00)填空项 1:_41.为 int *p; 动态分配内存空间并且赋初始值 0的语句是_。(分数:2.00)填空项 1:_42.写出执行完下列代码段之后指定变量的值:boo1 x=true,y=false,z=false;x=xy=xyz=!(x!=y)(y=z),则 x=false, y=false, z=_。(分数:2.00)填空项 1:_43.一个类可以从直接或间接的

    21、祖先中继承所有属性和方法。采用这个方法提高了软件的 1。(分数:2.00)填空项 1:_44.有如下程序:#include iostreamusing namespace std;int strle(char a,char b)int num=O,n=O;while (* (a+num) !=/0)num+;while (b n )* (a+num)=b n;num+;n+;return(num);int main ()char strl80,str280,*p1=str1,*p2=str2;cinp1;cinp2;coutstrle(p1,p2)end1;return 0;运行上述程序,如果

    22、从键盘输入字符串 qwerty和字符串 abcd,则程序的输出结果是_。(分数:1.00)填空项 1:_45.假定用户没有给一个名为 MyClass的类定义析构函数,则系统为其定义的默认析构函数首部形式为 1。(分数:1.00)填空项 1:_46.深度为 5的满二叉树有 1 个叶子结点。(分数:2.00)填空项 1:_47.下列程序的输出结果是_。#includeiostreamusing namespace std;int main()int i=3;int r=5;coutiendl;return 0;(分数:2.00)填空项 1:_48.数据库管理系统是位于 1 之间的软件系统。(分数:

    23、1.00)填空项 1:_49.有如下程序:#includeiostreamusing namespace std;class ONEpublic:virtual void f() cout “1“; ;class TWO: public ONEpublic:TWO() cout “2“; ;class THREE: public TWOpublic:virtual void f() TWO:f(); cout “3“; ;int main()ONE aa, *p;TWO bb;THREE cc;p = P-f();return 0;执行上面程序的输出是_(分数:1.00)填空项 1:_50.下

    24、列程序中需要清理动态分配的数组,划线处应有的语句是_。#includeiostream, hclass personint age, tall;public:person() age= 0; tall= 40; cout“A baby is born. “end1;person(int i) age=i, tall=40, cout“A old person. “end1;person(int i, int i) age = i; tall = j; cout “ a old person with tall. “end1;person( ) cout“ person dead. “end 1

    25、;void show()cout“age= “age“ ,tall= “tallend1;void main()person * ptr;ptr = new person3;ptr0=person ( )ptr1=person(18);ptr2=person(20,120);for(int i=0;i3; i+)ptri. show( );_(分数:2.00)填空项 1:_二级 C+笔试-413 答案解析(总分:84.00,做题时间:90 分钟)一、选择题(总题数:35,分数:62.00)1.当需要将一个函数 bool isnumber(char c)声明为内联函数时,则此内联函数的函数原型为

    26、( )。Aenum bool isnumber(char c); Bdefine bool isnumber(char c);Cinline bool isnumber(char c); Dextem bool isnumber(char c);(分数:2.00)A.B.C. D.解析:2.已知在一个类体中包含如下函数原型:VOLUME operator-(VOLUME)const;,下列关于这个函数的叙述中,错误的是 A) 这是运算符一的重载运算符函数 B) 这个函数所重载的运算符是一个一元运算符 C) 这是一个成员函数 D) 这个函数不改变类的任何数据成员的值(分数:2.00)A.B. C

    27、.D.解析:解析 二元运算符被重载为类的成员函数时,只需要定义一个参数,而另外一个参数为该对象自身。3.下列静态数据成员的特性中,错误的是 _。A) 静态数据成员的声明以关键字 static开头B) 静态数据成员必须在文件作用域内初始化C) 引导数据成员时,要在静态数据成员前加类名和作用域运算符D) 静态数据成员不是一个类所有对象共享的(分数:2.00)A.B.C.D. 解析:4.设有如下关系表:(分数:2.00)A.B. C.D.解析:解析 显然,关系表 T是关系表 R与 S的并,即 T=RS。5.有如下程序:#includeiostream#includeiomanipusing name

    28、space std;int main( )Coutsetw(10) setfill(x)setprecision(8) left;Cout12.3456793_98765;return 0;若程厚的输出是 12.345679x98765xxxxx,则划线处缺失的部分是A) setw(10) B) setfill(x) C) setprecision(8) D) right(分数:2.00)A. B.C.D.解析:6.如下程序运行时的输出结果是 #includeiostream using namespace std; class ONE int c; public: ONE( ):c(0)eo

    29、ut1; ONE(int n):C(n)cout2; ; class TW0 ONE onel; ONE one2; public: TWO(int m):one2(m)eout3; ; int main( ) TWO t(4); return 0; A) 3 B) 23 C) 123 D) 213(分数:2.00)A.B.C. D.解析:解析 派生类中含有对象时构造函数的调用顺序是:则先执行基类的构造函数,然后执行对象成员的构造函数,最后执行派生类的构造函数。析构函数的调用次序与构造函数的次序则相反。所以在创建对象 t4时,先调用基类无参构造函数 0NE( ):c(0),打印 1:然后调用对

    30、象 one2(m)的构造函数ONE(int n):c(n),打印 2;最后调用派生类的构造函数 TWO(int m),打印 3。7.一个( )允许用户为类定义一种模式,使得类中的某些数据成员及某些成员函数的返回值能取任意类型。A函数模板 B模板甲数 C类模板 D模板类(分数:2.00)A.B.C. D.解析:8.下列运算符中全都可以被友元函数重载的是A) 、/ B) 、( ) 、newC) 、*、 D) 、*(分数:2.00)A.B.C.D. 解析:解析 C中只能被成员函数重载的运算符是, ,( ) ,-,只能被友元函数重载的是 、 。9.有以下程序:#include iostreamusin

    31、g namespace std;int s=0;class samplestatic int n;public:sample (int i)n=i;static void add()s+=n;int sample:n=0;int main ()sample a(2) ,b(5);sample:add();coutsend1;return 0;执行后的输出结果是( )。A) 2 B) 5 C) 7 D) 3(分数:1.00)A.B. C.D.解析:解析 程序中定义对象 a(2)时,通过构造函数使静态数据成员 n=2,在定义对象 b(5)时,通过构造函数使静态数据成员 n=5(覆盖了前面 n=2)

    32、,再执行“sample:add();”使全局变量 s=5。注意:本题程序中尽管代码中静态数据成员 n的初始化语句“int sample:n=0;”没有意义(因为各对象中的 n值由变量 i赋给),但不能省略,否则会出现编译错误。10.下列运算符中,不能重载的是A) ?: B) + C) - D) =(分数:2.00)A. B.C.D.解析:解析 :?是 C+中唯一一个三目运算符,不能被重载。11.数据的存储结构是指( )。A) 数据所占的存储空间B) 数据的逻辑结构在计算机中的存放形式C) 数据在计算机中的顺序存储方式D) 存储在计算机外存中的数据(分数:2.00)A.B. C.D.解析:解析

    33、数据的存储结构,又称为数据的物理结构,是数据的逻辑结构在计算机中的存放形式,数据的存储结构有顺序结构、链式结构、散列结构和索引结构等。12.在软件生存周期中,能准确地确定软件系统必须做什么和必须具备哪些功能的阶段是( )。A概要设计 B详细设计C可行性分析 D需求分析(分数:2.00)A.B.C.D. 解析:13.由于常对象不能被更新,因此A) 通过常对象只能调用它的常成员函数B) 通过常对象只能调用静态成员函数C) 常对象的成员都是常成员D) 通过常对象可以调用任何不改变对象值的成员函数(分数:1.00)A. B.C.D.解析:解析 本题考查了常对象与常成员函数的概念。使用 const关键字

    34、修饰的对象称为常对象,它的特点是不能被更新;使用 const关键字声明的成员函数称为常成员函数,它的特点也是不能更新对象的数据成员。因为其他成员函数没有这个限制,即可以更新对象的数据成员,所以通过常对象只能调用常成员函数而不能调用其他成员函数,而且常成员函数也只能调用常成员函数而不能调用其他成员函数,否则它们的特性就会被打破。故应该选择 A。14.数据库系统的核心是A)数据模型 B)数据库管理系统 C)数据库 D)数据库管理员(分数:1.00)A.B. C.D.解析:解析 数据库系统的核心是数据库管理系统(DBMS)。15.下列语句#include iostreamusing namespac

    35、e std;void main()cout100.8989663;coutfixed100.8989663;coutscientific100.8989663;的输出结果为( )。A100.899 100.898966 1.008990e+002B100.8989663 100.898966 1.008990e+002C100.899 100.898966 1.008989e+002D100.899 100.8989663 1.008989e+002(分数:2.00)A. B.C.D.解析:16.有如下程序: #include iostream using namespace std; cla

    36、ss A public: A(int i)X=i; void dispa( )coutx,; private: int x; ; class B:public A public: B(int i):A(i+10)x=i; void dispb( )dispa( );coutxendl; private: int x; ; int main( ) B b(2); b.dispb( ); return 0; 程序的输出结果是 A) 10,2 B) 12,10 C) 12,2 D) 2,2(分数:2.00)A.B.C. D.解析:解析 派生类的构造函数定义的一般格式为: 派生类名(参数总表):基类名

    37、(参数表) 派生类新增数据成员的初始化语句 在生成对象 b时,就自动给基类构造函数传递实参 10+i,所以 dispa( )打印结果为 12,dispb( )打印结果为 2。17.有如下程序:#includeiostreamusing namespace std;class sampleprivate:int x,y;public:sample(int i,int j)x=i;y=j;void disp()cout“displ“endl;void disp()constcout“disp2“endl;int main()const sample a(1,2);a.disp();return 0

    38、;该程序运行后的输出结果是( )。Adisp1 Bdisp2Cdisp1 disp2 D程序编译时出错(分数:2.00)A.B. C.D.解析:18.执行语句:coutsetfill(*)setw(10)setfill(#)left123“OK“endl;return 0;)后将输出( )。A123*OK B123#OKC123*OK* D123#OK#(分数:2.00)A.B. C.D.解析:19.有以下程序:#include iostreamusing namespace std;class samplepnvate:int x;static int y;public:sample(int

    39、 a);static void print(sample s);sample:sample(int a)x=a;y+=x;void sample:print(sample s)cout“x=“s.x“,y=“yendl;int sample:y=0;int main()sample s1(10);sample s2(20);sample:print(s2);return 0;程序运行后的输出结果是( )。Ax=10,y=20 Bx=20,y=30 Cx=30,y=20 Dx=30,y=30(分数:2.00)A.B. C.D.解析:20.在 C+中,打开一个文件,就是将这个文件与一个( )建立关

    40、联;关闭一个文件,就是取消这种关联。A类 B流 C对象 D结构(分数:1.00)A.B. C.D.解析:21.要定义一个具有 5个元素的一维数组 vect,并使其各元素的初值依次是 30,50,-88,0 和 0,则下列定义语句中错误的是( )。Aintvect=30,50,-88; Bintvect=30,50,-88,0,0;Cintvect5=30,50,-88; Dint vect5=30,50,-88,0,0);(分数:2.00)A. B.C.D.解析:22.在软件开发中,需求分析阶段产生的主要文档是( )。A软件集成测试计划 B软件详细设计说明书C用户手册 D软件需求规格说明书(分

    41、数:2.00)A.B.C.D. 解析:23.按照“后进后出”原则组织数据的数据结构是_ 。A) 队列 B) 栈C) 双向链表 D) 二叉树(分数:2.00)A. B.C.D.解析:解析 队列是按照“后进后出”原则组织数据的数据结构。24.实现运行时的多态性要使用A) 重载函数 B) 析构函数 C) 构造函数 D) 虚函数(分数:2.00)A.B.C.D. 解析:解析 本题考核虚函数的应用。动态联编一直要到程序运行时才能确定调用哪个函数。虚函数是实现动态联编的必要条件之一。没有虚函数一定不能实现动态联编,但有虚函数存在时,必须同时满足下列条件,才能实现动态联编:类之间满足子类型关系;调用虚函数操

    42、作的是指向对象的指针或对象引用,或者是由成员函数调用虚函数。25.算法分析的目的是A)找出数据结构的合理性 B)找出算法中输入和输出之间的关系C)分析算法的易懂性和可靠性 D)分析算法的效率以求改进(分数:1.00)A.B.C.D. 解析:解析 算法分析是指对一个算法的运行时间和占用空间做定量的分析,一般计算出相应的数量级,常用时间复杂度和空间复杂度表示。分析算法的目的就是要降低算法的时间复杂度和空间复杂度,提高算法的执行效率。26.下列表示纯虚函数的成员函数是( )。Avirtual int func(int); Bvoid func(int)=0;Cvirtual void func=0;

    43、Dvirtual void func(int)(分数:2.00)A.B.C. D.解析:解析 本题考查纯虚函数的定义形式。由于纯虚函数在最后要有“=0”,故据此排除 A和 D。而B中没有出现 virtual关键词,故正确答案为 C。27.若有以下定义:int a=1,2,3,4,5,6,7char c1=b,c2=2;则数值不为 2的表达式是A) a1 B) d-c1C) a3-c2 D) c2-0(分数:1.00)A.B.C.D. 解析:解析 本题考查数组的定义、初始化及其引用,以及对字符 ASCII码值的熟悉程度。解本题的关键在于熟悉字符的 ASCII码值。字符在进行数学运算时取其 ASC

    44、II码值,其中b的 ASCII码值为98,d的 ASCII码值为 100,字符2的 ASCII码值为 50。根据以上知识,可知 D) 选项中表达式 c2-0的值为 50。28.下面程序的运行结果为( )。#includeiostreamusing namespace std;void main()int a=1;switch(a)case 1:cout“1“;case 2:cout“2“;break;default:cout“0“;A) 12 B) 120 C) 1 D) 10(分数:2.00)A. B.C.D.解析:解析 switch 语句检测到符合条件 case执行后面语句不再判断。29.

    45、下列关于多继承二义性的描述中,错误的是( )。A) 一个派生类的两个基类中都有某个同名成员,在派生类中对这个成员的访问可能出现二义性。B) 解决二义性的最常用的方法是对成员名的限定法C) 基类和派生类中同时出现的同名函数,也存在二义性问题D) 一个派生类是从两个基类派生出来的,而这两个基类又有一个共同的基类,对该基类成员进行访问时,可能出现二义性(分数:1.00)A.B.C. D.解析:解析 本题考核多继承中出现的二义性问题。在多重继承的情况下,派生类具有两个以上的直接基类,而这些直接基类的一部分或全部又是从另一个共同基类派生而来时,这些直接基类中从上一级继承来的成员就拥有相同的名称。在派生类

    46、的对象中,这些同名成员在内存中同时有多个复制件,所以派生对这些同名成员的访问存在二义性。所以选项 A和 D的说法是正确的。解决二义性的方法有两种:一是使用作用域分辨符来惟一标识并分别访问它们:二是可以将共同基类设置为虚基类。而第一种方法最常用。所以选项 B的说法是正确的。基类和派生类中同时出现同名函数,符合支配规则,不存在二义性问题。所以选项 C 的说法不正确。30.有如下程序:#includeiostreamusing namespace std;class Testpublic:Test() n+=2;Test() n-=3;static int getNum()return n;private:static int n;int Test:n=1;int main()Tes


    注意事项

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




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

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

    收起
    展开