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

    【学历类职业资格】C++程序设计自考题-4及答案解析.doc

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

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

    【学历类职业资格】C++程序设计自考题-4及答案解析.doc

    1、C+程序设计自考题-4 及答案解析(总分:100.00,做题时间:90 分钟)一、单项选择题(总题数:20,分数:20.00)1.下列关于构造函数的描述中,错误的是( )A构造函数可以设置默认的参数 B构造函数在定义类对象时自动执行C构造函数可以是内联函数 D构造函数不可以重载(分数:1.00)A.B.C.D.2.下列关于 this指针的说法,正确的是( )Athis 指针一定指向常量型数据 Bthis 指针指向的数据不可更改C静态成员函数中也可以访问 this指针 Dthis 指针本身可直接作为成员函数的返回值(分数:1.00)A.B.C.D.3.下列关于复制构造函数的说法中错误的是( )A

    2、复制构造函数是一种特殊的构造函数,函数名与类名相同B若自定义派生类的复制构造函数,那么也必须自定义基类的复制构造函数C复制构造函数只能有一个参数D复制构造函数不允许在函数体中使用 refurn语句(分数:1.00)A.B.C.D.4.下列哪种情况不属于函数重载( )A类中定义的运算符函数B同一个名字,参数个数不同C派生类中重新定义了一个和基类中的原型完全相同的函数D类中定义了两个同名、同参数表的函数,但其中一个是常成员函数(分数:1.00)A.B.C.D.5.下列关于友元的描述中,错误的是( )A友元函数可以访问该类的私有数据成员B一个类的友元类中的成员函数都是这个类的友元函数C类与类之间的友

    3、元关系可以继承D友元可以提高程序的运行效率(分数:1.00)A.B.C.D.6.下述静态成员的特性中,错误的是( )A静态成员函数不能利用 this指针B静态数据成员要在类体外进行初始化C引用静态数据成员时,要在静态数据成员名前加类名和作用域运算符D静态数据成员不是所有对象所共有的(分数:1.00)A.B.C.D.7.下面列出的基类中的哪部分能被派生类自动继承( )A基类中的默认构造函数 B基类中的虚析构函数C基类中的复制构造函数 D基类中的常成员函数(分数:1.00)A.B.C.D.8.下列有关继承和派生的叙述中,正确的是( )A派生类不能访问基类的保护成员 B作为虚基类的类不能被实例化C派

    4、生类应当向基类的构造函数传递参数 D虚函数必须在派生类中重新实现(分数:1.00)A.B.C.D.9.关于多重继承二义性的描述,错误的是( )A派生类的多个基类中存在同名成员时,派生类对这个成员访问可能出现二义性B个派生类是从具有共同的间接基类的两个基类派生来的,派生类对该公共基类的访问可能出现二义性C解决二义性最常用的方法是作用域分辨运算符对成员进行限定D派生类和它的基类中出现同名函数时,将可能出现二义性(分数:1.00)A.B.C.D.10.当基类本身也是某一个类的派生类时,底层的派生类也会自动继承间接基类的成员,称为继承的( )A规律性 B传递性C重复性 D多样性(分数:1.00)A.B

    5、.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向量可以

    6、改变赋值目标的大小Cerase(iterator it)方法是删除 it所指向的容器对象Dsize()方法指返回当前向量中已经存放的对象的个数(分数:1.00)A.B.C.D.14.下列虚基类的声明中正确的是( )Aclass virtual B:public A Bvirtual class B:public ACclass B:public A virtual Dclass B:virtual public A(分数:1.00)A.B.C.D.15.关于虚函数的描述中,正确的是( )A虚函数是一个静态成员函数B虚函数是一个非成员函数C虚函数既可以在函数说明时定义,也可以在函数实现时定义D派

    7、生类的虚函数与基类中对应的虚函数具有相同的参数个数和类型(分数:1.00)A.B.C.D.16.关于动态联编的描述中,错误的是( )A动态联编是以虚函数为基础的B动态联编运行时确定所调用的函数代码C动态联编调用函数操作是指向对象的指针或对象引用D动态联编是在编译时确定操作函数(分数:1.00)A.B.C.D.17.如果一个类至少有一个纯虚函数,那么就称该类为( )A抽象类 B虚基类C派生类 D以上都不对(分数:1.00)A.B.C.D.18.下列运算符在 C+中不能重载的是( )A?: BC D&(分数:1.00)A.B.C.D.19.在 C+的流类库预定义的缓冲方式下,与标准错误输出设备相联

    8、接的是( )Acin BcoutCcerr Dclog(分数:1.00)A.B.C.D.20.下列叙述中,错误的是( )Abad()函数功能表示如果进行非法操作,返回 true,否则返回 falseBios_base:in 打开文件用于输入(输入流的打开模式)Cios_base:ate 打开一个已有的输入或输出文件并查找到文件尾Dios_base:out 打开文件进行读操作(分数:1.00)A.B.C.D.二、填空题(总题数:20,分数:20.00)21.在类定义时,如果没有定义任何构造函数,则编译器自动生成一个 1 构造函数。(分数:1.00)填空项 1:_22.析构函数名是在类名前加上 1

    9、 符号,用来释放对象所占的内存空间。(分数:1.00)填空项 1:_23.设 A为 test类的对象且赋有初值,则语句 test B(A);表示 1。(分数:1.00)填空项 1:_24.静态数据成员初始化时,前面不加 1 关键字,以免与一般静态变量或对象混淆。(分数:1.00)填空项 1:_25.在类中声明 const数据成员时,只能通过 1 的方式来对该成员进行初始化。(分数:1.00)填空项 1:_26.在建立派生类对象时,先执行 1 的构造函数。(分数:1.00)填空项 1:_27.赋值兼容规则是指在公有派生情况下,基类对象 1(能、不能)使用派生类对象。(分数:1.00)填空项 1:

    10、_28.在继承机制下,当对象消亡时,编译系统执行析构函数的顺序是 1。(分数:1.00)填空项 1:_29.访问控制权限有 public、private 和 13 种。(分数:1.00)填空项 1:_30.定义派生类时,若不使用类关键字显式地规定采用何种继承方式,则默认方式为 1 继承。(分数:1.00)填空项 1:_31.用来派生新类的类称为 1,而派生出的新类称为它的子类或派生类。(分数:1.00)填空项 1:_32.类模板中声明的类称为 1。(分数:1.00)填空项 1:_33.返回向量中的第 1个对象的成员函数是 1。(分数:1.00)填空项 1:_34.在 C+中,利用向量类模板定义

    11、一个具有 20个 int的向量 A,其元素均被置为 5,实现操作的语句是 1。(分数:1.00)填空项 1:_35.在 C+中,可将多态性分为:编译时的多态性和 1。(分数:1.00)填空项 1:_36.至少包含一个 1 函数的类称为抽象类。(分数:1.00)填空项 1:_37.运算符的重载函数必须使用 1 关键字。(分数:1.00)填空项 1:_38. 1类是从 iostream类公有派生的,提供从文件中提取数据或把数据写入到文件的各种操作。(分数:1.00)填空项 1:_39.重载的运算符保持其原有的运算符个数、 1 不变。(分数:1.00)填空项 1:_40.表达式 operator+(

    12、x,y)还可以表示为 1。(分数:1.00)填空项 1:_三、改错题(总题数:5,分数:20.00)41.#includeiostream.hclass Apublic:virtualA() virtual void f()cout“A:f()“endl;virtual void g()cout“A:g()“endl;class B:public Apublic;virtual void g()cout“B:g()“endl;virtual void k()cout“B:k()“endl;void main()A*P=new B;P-f();P-g();P-k();delete p;(分数:4

    13、.00)_42.#includeiostream.hclass Addprivate:int sum;public:void plus(int,int);void Add:plus(int x,int y)sum=x+y;void main()Add add;add.plus(2,3);coutadd.sumendl;(分数:4.00)_43.#includeiostream.hclass Pointprotected:int x,y;public:Point(int i,int j)x=i,y=j;void Showxy()cout“x=“x“,y=“yendl;Point()cout“De

    14、lete Point“endl;void main()Point a;(分数:4.00)_44.#includeiostream.hclass Apublic:void f()cout“a.f()“endl;class Bpublic:void f()cout“b.f()“endl;void g()cout“b.g()“endl;class C:public A,public Bprivate:int b;public:void g()cout“c.g()“endl;void main()C obj;obj.f();obj.g();(分数:4.00)_45.#includeiostream.h

    15、class Aint i;public:virtual void fun()cout“A:fun()“endl;A(int a)i=a;class B:public Aint j;public:void fun()cout“B:fun()/n“;B(int b,int c)j=c;void main()A*P;B b(3,5);p=&b;p-fun();(分数:4.00)_四、完成程序题(总题数:5,分数:20.00)46.#includeiostream.hclass Apublic:void f(int i)coutiendl;void g()cout“g/n“;class B:_publ

    16、ic:void h()cout“h/n“;void main()B b;b.f(6);_.h();(分数:4.00)_47.#includeiostream.hclass Aprivate:int X,Y;public:A()X=Y=0;A(int xx,int yy):X(xx),Y(yy) A(A&a) _;int GetX() return X;int GetY()return Y;void SetXY(int x,int y) X=x;Y=y;void main()A*Ptr=new A2;Ptr0.SetXY(5,10);Ptr1.SetXY(15,20);cout“Release

    17、Ptr“endl;_;/释放动态分配内存(分数:4.00)_48.class pointprivate:int x,y;public:point(int,int);point(point&);point:point(int a,int b)x=a;_=b;point:point(_)x=z.x;y=z.y;void main()point p1(2,3);point p2(p1);(分数:4.00)_49.#includeiostream.h#includemath.hclass disprivate:double x,y;public:dis(_)x=x1;y=y1;double getx(

    18、)return x;double gety()return y;_double log(dis&,dis&);double dis:log(dis&a,dis&b)double px=a.x-b.x;double py=a.y-b.y;return sqrt(px*px+Py*Py);void main()dis p1(3.5,4.5),p2(5.5,6.5);double d=dis:log(p1,p2);cout“The distance is“d;(分数:4.00)_50.在下面程序横线处填上适当内容,使程序执行结果为:Y=1,Y=3,Z=5。#includeiostream.hclas

    19、s Bprivate:int Y;public:B(int y=0)Y=y;void print()cout“Y=“Y“,“;class D:public Bprivate:B b;int Z;public:D(int x,int y,int z):B(X),b(y)Z=z;void print()_;/打印基类 B中的成员 Y_;/打印类成员 b中的 Y值cout“Z=“Zendl;void main()D d(1,3,5);d.print();(分数:4.00)_五、程序分析题(总题数:2,分数:10.00)51.给出下面程序的输出结果。#includeiostream.hclass Ap

    20、rivate:int a;public:void set(int x)a=x;void show()cout“a:“a“,“;class B:public Aprivate:int b;public:void set(int x=0)A:set(x);b=x+10;void set(int x,int y)A:set(x);b=y;void show()A:show();cout“b=“bendl;void main()B b;b.set(10);b.show();b.set(30,50);b.show();(分数:5.00)_52.给出下面程序的输出结果。#includeiostream.h

    21、class Apublic:A()a1=0;A(int i)a1=i;void printout()couta1;private:int a1;class B:public Apublic:B()b1=0;B(int i,int j,int k);void printout();private:int b1;A aa;B:B(int i,int j,int k):A(i),aa(j)b1=k;void B:printout()A:printout();coutendl;void main()B tt2;tt0=B(9,3,5);tt1=B(8,4,7);for(int i=0;i2;i+)tt

    22、i.printout();(分数:5.00)_六、程序设计题(总题数:1,分数:10.00)53.有两个矩阵 a和 b,都是 2行 3列。求两个矩阵之和。重载运算符“+”,使之能用于矩阵相加。如c=a+b。(分数:10.00)_C+程序设计自考题-4 答案解析(总分:100.00,做题时间:90 分钟)一、单项选择题(总题数:20,分数:20.00)1.下列关于构造函数的描述中,错误的是( )A构造函数可以设置默认的参数 B构造函数在定义类对象时自动执行C构造函数可以是内联函数 D构造函数不可以重载(分数:1.00)A.B.C.D. 解析:解析 本题主要考查的知识点为构造函数。要点透析 构造函

    23、数可以重载,D 项说法错误;A、B、C 项正确、2.下列关于 this指针的说法,正确的是( )Athis 指针一定指向常量型数据 Bthis 指针指向的数据不可更改C静态成员函数中也可以访问 this指针 Dthis 指针本身可直接作为成员函数的返回值(分数:1.00)A.B.C.D. 解析:3.下列关于复制构造函数的说法中错误的是( )A复制构造函数是一种特殊的构造函数,函数名与类名相同B若自定义派生类的复制构造函数,那么也必须自定义基类的复制构造函数C复制构造函数只能有一个参数D复制构造函数不允许在函数体中使用 refurn语句(分数:1.00)A.B. C.D.解析:解析 本题主要考查

    24、的知识点为复制构造函数。要点透析 复制构造函数是一种特殊的构造函数,函数名与类名相同,且不能指定函数返回类型;复制构造函数只有一个参数,是对同类的某个对象的引用。A、C、D 项正确。B 项错误。4.下列哪种情况不属于函数重载( )A类中定义的运算符函数B同一个名字,参数个数不同C派生类中重新定义了一个和基类中的原型完全相同的函数D类中定义了两个同名、同参数表的函数,但其中一个是常成员函数(分数:1.00)A.B.C. D.解析:5.下列关于友元的描述中,错误的是( )A友元函数可以访问该类的私有数据成员B一个类的友元类中的成员函数都是这个类的友元函数C类与类之间的友元关系可以继承D友元可以提高

    25、程序的运行效率(分数:1.00)A.B.C. D.解析:解析 本题主要考查的知识点为友元。要点透析 友元关系是不能被继承的,C 项错误。6.下述静态成员的特性中,错误的是( )A静态成员函数不能利用 this指针B静态数据成员要在类体外进行初始化C引用静态数据成员时,要在静态数据成员名前加类名和作用域运算符D静态数据成员不是所有对象所共有的(分数:1.00)A.B.C.D. 解析:解析 本题主要考查的知识点为静态成员。要点透析 静态成员函数属于整个类,是类的所有对象共享的成员函数,它与一般成员函数不同,没有指向调用该成员函数的对象的 this指针,A 项正确;静态教据成员的初始化应在类体外进行

    26、,B 项正确;静态数据成员是属于整个类的,因此可以不通过对象名,而直接使用类名和作用域运算符表明其所属的类即可,C 项正确;静态数据成员被类的所有对象所共享,D 项错误。7.下面列出的基类中的哪部分能被派生类自动继承( )A基类中的默认构造函数 B基类中的虚析构函数C基类中的复制构造函数 D基类中的常成员函数(分数:1.00)A.B.C.D. 解析:解析 本题主要考查的知识点为继承。要点透析 只要是构造函数、析构函数都不能被继承。常成员函数能被自动继承到派生类。8.下列有关继承和派生的叙述中,正确的是( )A派生类不能访问基类的保护成员 B作为虚基类的类不能被实例化C派生类应当向基类的构造函数

    27、传递参数 D虚函数必须在派生类中重新实现(分数:1.00)A.B.C. D.解析:解析 本题主要考查的知识点为继承和派生。要点透析 派生类可以访问基类的保护成员;抽象类不能被实例化,而作为虚基类的类能被实例化;虚函数不必在派生类中重新实现。故 A、B、D 错误,C 项说法正确。9.关于多重继承二义性的描述,错误的是( )A派生类的多个基类中存在同名成员时,派生类对这个成员访问可能出现二义性B个派生类是从具有共同的间接基类的两个基类派生来的,派生类对该公共基类的访问可能出现二义性C解决二义性最常用的方法是作用域分辨运算符对成员进行限定D派生类和它的基类中出现同名函数时,将可能出现二义性(分数:1

    28、.00)A.B.C.D. 解析:10.当基类本身也是某一个类的派生类时,底层的派生类也会自动继承间接基类的成员,称为继承的( )A规律性 B传递性C重复性 D多样性(分数:1.00)A.B. C.D.解析:11.下列说法中,不正确的是( )A模板类的基类可以是非模板类B模板类的派生类可以是模板类C根据建立对象时的实际数据类型,编译器把类模板实例化为模板类D可以从构造函数参数列表推断出模板实例化参数类型(分数:1.00)A.B.C.D. 解析:解析 本题主要考查的知识点为类模板。要点透析 模板实例化参数类型包括数据类型和值,编译器不能从构造函数参数列表推断出模板实例化参数类型,所以必须显式地给出

    29、对象的参数类型。12.下面关于类模板的派生与继承,描述错误的是( )A类模板可以继承,继承的方法与普通的类一样 B声明模板继承之前,必须重新声明类模板C模板类的基类和派生类不可以是非模板类 D模板类的基类和派生类可以是模板类或非模板类(分数:1.00)A.B.C. D.解析:13.下列关于向量的描述中,不正确的是( )A向量是类模板,具有成员函数,但它不可以使用构造类型B向量可以改变赋值目标的大小Cerase(iterator it)方法是删除 it所指向的容器对象Dsize()方法指返回当前向量中已经存放的对象的个数(分数:1.00)A. B.C.D.解析:解析 本题主要考查的知识点为向量。

    30、要点透析 向量可以使用构造类型,它提供了 4种构造函数,用来定义由各元素组成的列表。14.下列虚基类的声明中正确的是( )Aclass virtual B:public A Bvirtual class B:public ACclass B:public A virtual Dclass B:virtual public A(分数:1.00)A.B.C.D. 解析:解析 本题主要考查的知识点为虚基类。要点透析 定义派生类时在派生方式前加 virtual关键字,该类的基类就成了虚基类。15.关于虚函数的描述中,正确的是( )A虚函数是一个静态成员函数B虚函数是一个非成员函数C虚函数既可以在函数说

    31、明时定义,也可以在函数实现时定义D派生类的虚函数与基类中对应的虚函数具有相同的参数个数和类型(分数:1.00)A.B.C.D. 解析:解析 本题主要考查的知识点为虚函数。要点透析 派生类的虚函数与基类中对应的虚函数具有相同的函数名、相同的参数个数和类型。本题正确答案为 D。16.关于动态联编的描述中,错误的是( )A动态联编是以虚函数为基础的B动态联编运行时确定所调用的函数代码C动态联编调用函数操作是指向对象的指针或对象引用D动态联编是在编译时确定操作函数(分数:1.00)A.B.C.D. 解析:解析 本题主要考查的知识点为动态联编。要点透析 静态联编在编译时就可确定调用哪个函数,动态联编是程

    32、序运行到需要的语句时才确定的。17.如果一个类至少有一个纯虚函数,那么就称该类为( )A抽象类 B虚基类C派生类 D以上都不对(分数:1.00)A. B.C.D.解析:解析 本题主要考查的知识点为抽象类。要点透析 包含有纯虚函数的类称为抽象类,一个抽象类只能作为基类来派生新类。不能说明抽象类的对象。18.下列运算符在 C+中不能重载的是( )A?: BC D&(分数:1.00)A. B.C.D.解析:解析 本题主要考查的知识点为运算符重载。要点透析 C+中,除了.、.*、-*、:、?:运算符外,其他运算符都可以重载。19.在 C+的流类库预定义的缓冲方式下,与标准错误输出设备相联接的是( )A

    33、cin BcoutCcerr Dclog(分数:1.00)A.B.C.D. 解析:解析 本题主要考查的知识点为流类库的预定义流对象。要点透析 cin 与标准输入设备相联接:cout 与标准输出设备相联接;cerr 与标准错误输出设备相联接(非缓冲方式);clog 与标准错误输出设备相联接(缓冲方式)。本题正确答案为 D。20.下列叙述中,错误的是( )Abad()函数功能表示如果进行非法操作,返回 true,否则返回 falseBios_base:in 打开文件用于输入(输入流的打开模式)Cios_base:ate 打开一个已有的输入或输出文件并查找到文件尾Dios_base:out 打开文件

    34、进行读操作(分数:1.00)A.B.C.D. 解析:解析 本题主要考查的知识点为文件的打开方式。要点透析 ios_base:out 是打开文件进行写操作,D 项错误。二、填空题(总题数:20,分数:20.00)21.在类定义时,如果没有定义任何构造函数,则编译器自动生成一个 1 构造函数。(分数:1.00)填空项 1:_ (正确答案:无参数的默认)解析:22.析构函数名是在类名前加上 1 符号,用来释放对象所占的内存空间。(分数:1.00)填空项 1:_ (正确答案:)解析:23.设 A为 test类的对象且赋有初值,则语句 test B(A);表示 1。(分数:1.00)填空项 1:_ (正

    35、确答案:用对象 A初始化对象 B)解析:24.静态数据成员初始化时,前面不加 1 关键字,以免与一般静态变量或对象混淆。(分数:1.00)填空项 1:_ (正确答案:static)解析:25.在类中声明 const数据成员时,只能通过 1 的方式来对该成员进行初始化。(分数:1.00)填空项 1:_ (正确答案:初始化列表)解析:26.在建立派生类对象时,先执行 1 的构造函数。(分数:1.00)填空项 1:_ (正确答案:基类)解析:27.赋值兼容规则是指在公有派生情况下,基类对象 1(能、不能)使用派生类对象。(分数:1.00)填空项 1:_ (正确答案:能)解析:28.在继承机制下,当对

    36、象消亡时,编译系统执行析构函数的顺序是 1。(分数:1.00)填空项 1:_ (正确答案:先派生类,后派生类中子对象类,最后是基类)解析:29.访问控制权限有 public、private 和 13 种。(分数:1.00)填空项 1:_ (正确答案:protected)解析:30.定义派生类时,若不使用类关键字显式地规定采用何种继承方式,则默认方式为 1 继承。(分数:1.00)填空项 1:_ (正确答案:私有)解析:31.用来派生新类的类称为 1,而派生出的新类称为它的子类或派生类。(分数:1.00)填空项 1:_ (正确答案:父类或基类)解析:32.类模板中声明的类称为 1。(分数:1.0

    37、0)填空项 1:_ (正确答案:模板类)解析:33.返回向量中的第 1个对象的成员函数是 1。(分数:1.00)填空项 1:_ (正确答案:front-|_|-)解析:34.在 C+中,利用向量类模板定义一个具有 20个 int的向量 A,其元素均被置为 5,实现操作的语句是 1。(分数:1.00)填空项 1:_ (正确答案:vectorintA(20,5);)解析:35.在 C+中,可将多态性分为:编译时的多态性和 1。(分数:1.00)填空项 1:_ (正确答案:运行时的多态性)解析:36.至少包含一个 1 函数的类称为抽象类。(分数:1.00)填空项 1:_ (正确答案:纯虚)解析:37

    38、.运算符的重载函数必须使用 1 关键字。(分数:1.00)填空项 1:_ (正确答案:operator)解析:38. 1类是从 iostream类公有派生的,提供从文件中提取数据或把数据写入到文件的各种操作。(分数:1.00)填空项 1:_ (正确答案:fstream)解析:39.重载的运算符保持其原有的运算符个数、 1 不变。(分数:1.00)填空项 1:_ (正确答案:优先级和结合性)解析:40.表达式 operator+(x,y)还可以表示为 1。(分数:1.00)填空项 1:_ (正确答案:x+y)解析:三、改错题(总题数:5,分数:20.00)41.#includeiostream.

    39、hclass Apublic:virtualA() virtual void f()cout“A:f()“endl;virtual void g()cout“A:g()“endl;class B:public Apublic;virtual void g()cout“B:g()“endl;virtual void k()cout“B:k()“endl;void main()A*P=new B;P-f();P-g();P-k();delete p;(分数:4.00)_正确答案:(p-k();错误,在类 A中无 k()函数。可在类 A中增加 k()函数的定义。)解析:42.#includeiost

    40、ream.hclass Addprivate:int sum;public:void plus(int,int);void Add:plus(int x,int y)sum=x+y;void main()Add add;add.plus(2,3);coutadd.sumendl;(分数:4.00)_正确答案:(coutadd.sumendl;sum 是私有成员,在外部无法访问。应修改 sum访问权限为public类型。)解析:43.#includeiostream.hclass Pointprotected:int x,y;public:Point(int i,int j)x=i,y=j;void Showxy()cout“x=“x“,y=“yendl;Point()cout“Delete Point“endl;void main()Point a;(分数:4.00)_正确答案:(Point a;Point 类中有构造函数,系统不再自动产生无参构造函数。可以在声明对象的同时给定初始值,如 Point a(0,0);。)解析:44.#includeiostream.hclass Apublic:void f()cout“a.f()“endl;class Bpublic:void f()cout“b.f()“endl;void g()cout“b.g()“endl;cl


    注意事项

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




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

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

    收起
    展开