c面向对象程序设计试题和答案_第1页
c面向对象程序设计试题和答案_第2页
c面向对象程序设计试题和答案_第3页
c面向对象程序设计试题和答案_第4页
c面向对象程序设计试题和答案_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、(完满版)c+面向对象程序设计试题和答案(完满版)c+面向对象程序设计试题和答案8/8(完满版)c+面向对象程序设计试题和答案填空题(每空1分,共14分)系名_班密级封_线_内_不姓名答_题_学号_1、观看以下程序:classpointpublic:voidshow()cout”point”show()_/经过指针p接见show函数2、在C+类中可以包括_私有_、_公有_和_保护_三种拥有不相同接见控制权的成员。3、定义类时,在类头中将使用要点字_class_来表示类定义的开始。4、若是一个类中最少有一个纯虚函数,则该类称为_抽象类_。5、C+类的组成包括数据成员和_成员函数_,友元_不是_(

2、是、不是)该类的成员函数。6、友员函数是用要点字_friend_修饰的非成员函数。7、若有:inti;int&j=i;i=10;j=i+1;则i=_11_,j=_11_。8、new的功能是_动向申请内存空间_,delete的功能是_释放由new申请的空间_。二、选择题(每题1.5分,共30分)1、以下特点中不是面向对象程序设计语言所特有的是()。第1页(A)数据封装(B)继承(C)多态性(D)模板2、()是给变量取一个别名,它引入了变量的赞成词。(A)指针(B)引用(C)列举(D)构造3、类成员的接见权限中,()只能被本类的成员函数和其友元函数接见。(A)share(B)public(C)pr

3、ivate(D)protected4、关于构造函数,以下说法不正确的选项是()。A)构造函数名字和类名相同B)构造函数在创办对象时自动执行C)构造函数无任何函数返回种类D)构造函数有且只有一个5、派生类可以接见其基类的()。(A)公有成员(B)保护成员(C)私有派生(D)公有和保护成员6、以下关于运算符重载的描述中,错误的选项是()。(A)运算符重载不可以改变操作数的个数(B)运算符重载不可以改变运算符的功能(C)运算符重载不可以改变结合方向(D)运算符重载不可以改变运算优先级7、C+语言是从早期的C语言逐渐发展演变而来的.与C语言对照,它在求解问题方法上进行的最大改进是()(A)面向过程(B

4、)面向对象(C)安全性(D)复用性8、关于类中定义的成员,其隐含接见权限为()。ApublicBprotectedCprivateDstatic9、下面相关重载函数的说法中正确的选项是()(A)重载函数必定拥有不相同的返回值种类;(B)重载函数形参个数必定不相同;(C)重载函数必定有不相同的形参列表(D)重载函数名可以不相同;10、有以下的对类“CSample”的说明,其中()是错误的。classCSampleAinta=23;BCSample();public:CCSample(intval);DCSample();11、在inta=3,int*p=&a;中,*p的值是()A.变量a的地址值

5、B.没心义C.变量p的地址值D.3第2页系名_班级_姓名_学号_密封线内不答题12、每个类()构造函数。(A)只能有一个(B)只可有公有的(C)可以有多个(D)只可出缺省的13、在一个类中可以对一个操作符进行()重载。(A)1种(B)2种以下(C)3种以下(D)多种14、在公有继承的情况下,基类非私有成员在派生类中的接见权限()(A)受限制(B)保持不变(C)受保护(D)不受保护15、应在以下程序划线处填入的正确语句是()#includeclassBasepublic:voidfun()coutBase:funENDL;classDerived:publicBasevoidfun()_/显示调

6、用基类的函数fun()coutDerived:funfun();16、执行下面的程序将输出()#includeclassBASEcharc;public:BASE(charn):c(n)virtualBASE()coutc;classDERIVED:publicBASEcharc;public:DERIVED(charn):BASE(n+1),c(n)DERIVED()coutc;第3页intmain()DERIVEDa(X);return0;A)XY(B)YX(C)X(D)Y17、下面描述中,表达错误的选项是()(A)公有继承时基类中的public成员在派生类中仍是public的(B)公有继

7、承是基类中的private成员在派生类中仍是private的(C)公有继承时基类中的protected成员在派生类中仍是protected的(D)私有继承时基类中的public成员在派生类中是private的18、定义析构函数时,应该注意()(A)其名与类名完满相同(B)返回种类是void种类(C)无形参,也不可以重载(D)函数体中必定有delete语句19、关于在类中定义的静态数据成员,下面正确的说法是()该类的每个对象中都有一个静态数据成员对象创办时产生在类外进行初始化既可以在类外初始化,也可以在类内初始化20、C+中声明常量的要点字是()。A.constB.externC.publicD

8、.enum三、改错题(每处2分,共6分)1、使用VC6打开考生文件夹下的工程proj1,此工程包括一个源程前言件main.cpp,但该程序运行有问题,请更正main函数中的错误,使程序的输出结果为:member=0member=5menber=10源程前言件main.cpp清单以下:#includeclassMyClasspublic:MyClass(inti)member=i;voidSetMember(intm)member=m;intGetMember()constreturnmenber;第4页系名_班级_姓名_学号_密封线内不答题voidprint()contcoutmember=M

9、EMBERENDL;private:intmember;voedmain()MyClassobj1;/更正_obj1.print();MyClassobj2(3);obj1.member=5;/更正_MyClass.SetMember(10);/更正_obj1.print();obj2.print();四、写出以下程序的执行结果(每题5分,共20分)1、#includeclassSampleintn;public:Sample(inti)n=i;friendintadd(Sample&s1,Sample&s2);intadd(Sample&s1,Sample&s2)returns1.n+s2.

10、n;voidmain()Samples1(10),s2(20);coutadd(s1,s2)endl;执行结果是:第5页2、#includeintadd(intx,inty)returnx+y+1;doubleadd(doublex,doubley)returnx+y-1;voidmain()inta=2,b=4;doublec=2.6,d=7.4;coutadd(a,b),add(c,d)endl;执行结果是:3、#includeclassApublic:intn;classB:virtualpublicA;classC:virtualpublicA;classD:publicB,publi

11、cCintgetn()returnB:n;voidmain()第6页系名_班级_姓名_学号_密封线内不答题d;d.B:n=10;d.C:n=20;coutd.B:n,d.C:nendl;执行结果是:、#includeclassmyclassinta,b;staticints;public:myclass(intx,inty)a=x;b=y;s+;voidprint()coutsendl;intmyclass:s=0;voidmain()myclassm1(1,2),m2(4,5),m3(6,7);m1.print();m2.print();m3.print();执行结果是:五、编程题(每题10分、共30分)1、测试一个名为rectangle的矩形类,其属性为矩形的左下角与右上角两个点的坐标,能计算矩形的面积。(10分)2、定义一boat与car两个类,二者都有weight属性,定义二者

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论