《2023年c面向对象程序设计试题和答案.pdf》由会员分享,可在线阅读,更多相关《2023年c面向对象程序设计试题和答案.pdf(9页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、(完整版)c+面向对象程序设计试题和答案 第1页(完整版)c+面向对象程序设计试题和答案 编辑整理:尊敬的读者朋友们:这里是精品文档编辑中心,本文档内容是由我和我的同事精心编辑整理后发布的,发布之前我们对文中内容进行仔细校对,但是难免会有疏漏的地方,但是任然希望((完整版)c+面向对象程序设计试题和答案)的内容能够给您的工作和学习带来便利。同时也真诚的希望收到您的建议和反馈,这将是我们进步的源泉,前进的动力。本文可编辑可修改,如果觉得对您有帮助请收藏以便随时查阅,最后祝您生活愉快 业绩进步,以下为(完整版)c+面向对象程序设计试题和答案的全部内容。(完整版)c+面向对象程序设计试题和答案 第2
2、页 填空题(每空 1 分,共 14 分)1、观看以下程序:class point public:void show()cout ”point”endl;;void main()point p1;point*p;p=&p1;_P1。show()_/通过对象 p1 访问 show 函数 _p-show()_/通过指针 p 访问 show 函数 2、在 C+类中可以包含_私有_、_公有_和_保护_三种具有不同访问控制权的成员。3、定义类时,在类头中将使用关键字_class_ 来表示类定义的开始。4、如果一个类中至少有一个纯虚函数,则该类称为_抽象类_。5、C+类的组成包括数据成员和_成员函数_,友元
3、_不是_(是、不是)该类的成员函数。6、友员函数是用关键字_friend_ 修饰的非成员函数。7、若有:int i;int j=i;i=10;j=i+1;则 i=_11_,j=_11_。8、new 的功能是_动态申请内存空间_,delete的功能是_释放由 new申请的空间_.二、选择题(每小题 1.5 分,共 30 分)1、下列特性中不是面向对象程序设计语言所特有的是()。(A)数据封装(B)继承(C)多态性(D)模板 2、()是给变量取一个别名,它引入了变量的同意词。会有疏漏的地方但是任然希望完整版面向对象程序设计试题和答案的内容能够给您的工作和学习带来便利同时也真诚随时查阅最后祝您生活愉
4、快业绩进步以下为完整版面向对象程序设计试题和答案的部内容第页完整版面向对象程序设护三种具有不同访问控制权的成员定义类时在类头中将使用关键字来表示类定义的开始如果一个类中至少有一个纯虚(完整版)c+面向对象程序设计试题和答案 第3页(A)指针(B)引用(C)枚举(D)结构 3、类成员的访问权限中,()只能被本类的成员函数和其友元函数访问.(A)share(B)public(C)private(D)protected 4、关于构造函数,下列说法不正确的是()。(A)构造函数名字和类名相同(B)构造函数在创建对象时自动执行(C)构造函数无任何函数返回类型(D)构造函数有且只有一个 5、派生类可以访问
5、其基类的()。(A)公有成员(B)保护成员(C)私有派生(D)公有和保护成员 6、下列关于运算符重载的描述中,错误的是().(A)运算符重载不可以改变操作数的个数(B)运算符重载不可以改变运算符的功能(C)运算符重载不可以改变结合方向(D)运算符重载不可以改变运算优先级 7、C+语言是从早期的 C语言逐渐发展演变而来的.与 C语言相比,它在求解问题方法上进行的最大改进是()(A)面向过程 (B)面向对象 (C)安全性 (D)复用性 8、对于类中定义的成员,其隐含访问权限为()。Apublic Bprotected Cprivate Dstatic 9、下面有关重载函数的说法中正确的是()(A)
6、重载函数必须具有不同的返回值类型;(B)重载函数形参个数必须不同;(C)重载函数必须有不同的形参列表 (D)重载函数名可以不同;10、有如下的对类“CSample的说明,其中()是错误的。class CSample Aint a=23;BCSample();public:会有疏漏的地方但是任然希望完整版面向对象程序设计试题和答案的内容能够给您的工作和学习带来便利同时也真诚随时查阅最后祝您生活愉快业绩进步以下为完整版面向对象程序设计试题和答案的部内容第页完整版面向对象程序设护三种具有不同访问控制权的成员定义类时在类头中将使用关键字来表示类定义的开始如果一个类中至少有一个纯虚(完整版)c+面向对象
7、程序设计试题和答案 第4页 CCSample(int val);D CSample();11、在 int a=3,int p=&a;中,*p 的值是()A。变量 a 的地址值 B.无意义 C.变量 p 的地址值 D。3 12、每个类()构造函数。(A)只能有一个 (B)只可有公有的 (C)可以有多个 (D)只可有缺省的 13、在一个类中可以对一个操作符进行()重载。(A)1 种 (B)2 种以下 (C)3 种以下 (D)多种 14、在公有继承的情况下,基类非私有成员在派生类中的访问权限()(A)受限制 (B)保持不变 (C)受保护 (D)不受保护 15、应在下列程序划线处填入的正确语句是()i
8、nclude class Base public:void fun()coutBase::fun”ENDL;;class Derived:public Base void fun()_/显示调用基类的函数 fun()coutfun();16、执行下面的程序将输出()include iostream.h class BASE char c;public:BASE(char n):c(n)virtual BASE()cout c;class DERIVED:public BASE char c;public:DERIVED(char n):BASE(n+1),c(n)DERIVED()cout c
9、;int main()会有疏漏的地方但是任然希望完整版面向对象程序设计试题和答案的内容能够给您的工作和学习带来便利同时也真诚随时查阅最后祝您生活愉快业绩进步以下为完整版面向对象程序设计试题和答案的部内容第页完整版面向对象程序设护三种具有不同访问控制权的成员定义类时在类头中将使用关键字来表示类定义的开始如果一个类中至少有一个纯虚(完整版)c+面向对象程序设计试题和答案 第5页 DERIVED a(X);return 0;(A)XY (B)YX (C)X (D)Y 17、下面描述中,表达错误的是()(A)公有继承时基类中的 public 成员在派生类中仍是 public 的(B)公有继承是基类中的
10、 private成员在派生类中仍是 private的 (C)公有继承时基类中的 protected成员在派生类中仍是 protected的 (D)私有继承时基类中的 public 成员在派生类中是 private的 18、定义析构函数时,应该注意()(A)其名与类名完全相同 (B)返回类型是 void 类型 (C)无形参,也不可重载 (D)函数体中必须有 delete 语句 19、对于在类中定义的静态数据成员,下面正确的说法是()A。该类的每个对象中都有一个静态数据成员 B.对象创建时产生 C。在类外进行初始化 D.既可以在类外初始化,也可以在类内初始化 20、C+中声明常量的关键字是()。A
11、。const B。extern C.public D.enum 三、改错题(每处 2 分,共 6 分)1、使用 VC6打开考生文件夹下的工程 proj1,此工程包含一个源程序文件 main.cpp,但该程序运行有问题,请改正 main 函数中的错误,使程序的输出结果为:member=0 member=5 menber=10 源程序文件 main。cpp 清单如下:include iostream.h class MyClass 会有疏漏的地方但是任然希望完整版面向对象程序设计试题和答案的内容能够给您的工作和学习带来便利同时也真诚随时查阅最后祝您生活愉快业绩进步以下为完整版面向对象程序设计试题和
12、答案的部内容第页完整版面向对象程序设护三种具有不同访问控制权的成员定义类时在类头中将使用关键字来表示类定义的开始如果一个类中至少有一个纯虚(完整版)c+面向对象程序设计试题和答案 第6页 public:MyClass(int i)member=i;void SetMember(int m)member=m;int GetMember()constreturn menber;void print()contcoutmember=MEMBERENDL;private:int member;;voed main()MyClass obj1;/更正_ obj1。print();MyClass obj2
13、(3);obj1.member=5;/更正_ MyClass.SetMember(10);/更正_ obj1.print();obj2.print();四、写出下列程序的执行结果(每小题 5 分,共 20 分)1、#include iostream.h class Sample int n;public:Sample(int i)n=i;friend int add(Sample s1,Sample s2);;int add(Sample&s1,Sample s2)return s1。n+s2.n;void main()Sample s1(10),s2(20);cout add(s1,s2)e
14、ndl;执行结果是:2、include 会有疏漏的地方但是任然希望完整版面向对象程序设计试题和答案的内容能够给您的工作和学习带来便利同时也真诚随时查阅最后祝您生活愉快业绩进步以下为完整版面向对象程序设计试题和答案的部内容第页完整版面向对象程序设护三种具有不同访问控制权的成员定义类时在类头中将使用关键字来表示类定义的开始如果一个类中至少有一个纯虚(完整版)c+面向对象程序设计试题和答案 第7页 int add(int x,int y)return x+y+1;double add(double x,double y)return x+y1;void main()int a=2,b=4;doubl
15、e c=2。6,d=7。4;cout add(a,b)class A public:int n;;class B:virtual public A;class C:virtual public A;class D:public B,public C int getn()return B:n;;void main()D d;d。B::n=10;d.C:n=20;cout d.B:n”,”d。C:n class myclass int a,b;static int s;public:myclass(int x,int y)a=x;b=y;s+;void print()cout s endl;int
16、 myclass:s=0;void main()myclass m1(1,2),m2(4,5),m3(6,7);m1.print();m2。print();m3。print();执行结果是:五、编程题(每题 10 分、共 30 分)1、测试一个名为 rectangle的矩形类,其属性为矩形的左下角与右上角两个点的坐标,能计算矩形的面积.(10 分)2、定义一 boat 与 car 两个类,二者都有 weight 属性,定义二者的一个友元函数 totalweight会有疏漏的地方但是任然希望完整版面向对象程序设计试题和答案的内容能够给您的工作和学习带来便利同时也真诚随时查阅最后祝您生活愉快业绩进
17、步以下为完整版面向对象程序设计试题和答案的部内容第页完整版面向对象程序设护三种具有不同访问控制权的成员定义类时在类头中将使用关键字来表示类定义的开始如果一个类中至少有一个纯虚(完整版)c+面向对象程序设计试题和答案 第9页(),计算二者的重量和。(10 分)3、设计一个汽车类 vehicle,包含的数据成员有车轮个数 wheels 和车重 weight.小车类 car是它的派生类,其中包含载人数 passenger_load.每个类都有相关数据的输出方法.在主程序中定义一个 car 类对象,对其车轮个数、车重、载人数进行设置并显示。(10 分)会有疏漏的地方但是任然希望完整版面向对象程序设计试题和答案的内容能够给您的工作和学习带来便利同时也真诚随时查阅最后祝您生活愉快业绩进步以下为完整版面向对象程序设计试题和答案的部内容第页完整版面向对象程序设护三种具有不同访问控制权的成员定义类时在类头中将使用关键字来表示类定义的开始如果一个类中至少有一个纯虚