版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、精选优质文档-倾情为你奉上一、 填空题(每空1分,共14分)1、 观看以下程序:class pointpublic: 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
2、、 C+类的组成包括数据成员和_成员函数_,友元_是_(是、不是)该类的成员函数。6、 友员函数是用关键字_friend_修饰的非成员函数。7、 若有:int i;int &j=i;i=10;j=i+1;则i=_11_,j=_11_。8、 new的功能是_分配内存空间_,delete的功能是_释放内存空间_。二、 选择题(每小题1.5分,共30分)1、下列特性中不是面向对象程序设计语言所特有的是( D )。(A)数据封装(B)继承(C)多态性(D)模板2、( B )是给变量取一个别名,它引入了变量的同意词。(A)指针(B)引用(C)枚举(D)结构3、类成员的访问权限中,( )只能被本类
3、的成员函数和其友元函数访问。(A)share(B)public(C)private(D)protected4、关于构造函数,下列说法不正确的是( )。(A)构造函数名字和类名相同(B)构造函数在创建对象时自动执行(C)构造函数无任何函数返回类型(D)构造函数有且只有一个5、派生类可以访问其基类的( )。(A)公有成员(B)保护成员(C)私有派生(D)公有和保护成员6、下列关于运算符重载的描述中,错误的是( )。(A)运算符重载不可以改变操作数的个数(B)运算符重载不可以改变运算符的功能(C)运算符重载不可以改变结合方向(D)运算符重载不可以改变运算优先级7、C+语言是从早期的C语言逐渐发展演变
4、而来的.与C语言相比,它在求解问题方法上进行的最大改进是( ) (A)面向过程(B)面向对象(C)安全性(D)复用性8、对于类中定义的成员,其隐含访问权限为( )。 Apublic Bprotected Cprivate Dstatic9、下面有关重载函数的说法中正确的是( ) (A)重载函数必须具有不同的返回值类型;(B)重载函数形参个数必须不同; (C)重载函数必须有不同的形参列表 (D)重载函数名可以不同;10、有如下的对类“CSample”的说明,其中( )是错误的。class CSample Aint a=23;BCSample();public:CCSample(int val);
5、D CSample();11、在int a=3,int *p=&a;中,*p的值是( )A.变量a的地址值 B.无意义C.变量p的地址值 D.312、每个类( )构造函数。 (A)只能有一个 (B)只可有公有的 (C)可以有多个 (D)只可有缺省的13、在一个类中可以对一个操作符进行( )重载。 (A)1 种 (B)2 种以下 (C)3 种以下 (D)多种14、在公有继承的情况下,基类非私有成员在派生类中的访问权限( )(A) 受限制 (B)保持不变 (C)受保护 (D)不受保护15、应在下列程序划线处填入的正确语句是( )#include <iostream.h>clas
6、s Base public: void fun()cout<<"Base:fun"<<ENDL; ; class Derived:public Base void fun() _/显示调用基类的函数fun() cout<<"Derived:fun"<<ENDL; ; (A)fun(); (B)Base.fun(); (C)Base:fun(); (D)Base->fun();16、执行下面的程序将输出( ) #include <iostream.h>class BASEchar c;pub
7、lic: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; int main() DERIVED a('X'); return 0; (A)XY (B)YX (C)X (D)Y17、 下面描述中,表达错误的是( ) (A)公有继承时基类中的public成员在派生类中仍是public的(B)公有继承是基类中的priv
8、ate成员在派生类中仍是private的 (C)公有继承时基类中的protected成员在派生类中仍是protected的 (D)私有继承时基类中的public成员在派生类中是private的18、定义析构函数时,应该注意( ) (A)其名与类名完全相同 (B)返回类型是 void 类型 (C)无形参,也不可重载 (D)函数体中必须有 delete 语句19、对于在类中定义的静态数据成员,下面正确的说法是( )A.该类的每个对象中都有一个静态数据成员B.对象创建时产生 C.在类外进行初始化D.既可以在类外初始化,也可以在类内初始化20、C+中声明常量的关键字是( )。A. const B. e
9、xtern 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 public: MyClass(int i)member=i; void SetMember(int m)member=m; int
10、GetMember()constreturn menber; void print()contcout<<"member="<<MEMBER<<ENDL; private: int member; ; voed main() MyClass obj1; /更正_obj1.print(); MyClass obj2(3); obj1.member=5; /更正_MyClass.SetMember(10); /更正_obj1.print(); obj2.print(); 四、 写出下
11、列程序的执行结果(每小题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)<<endl; 执行结果是:2、#include<iostream.
12、h> int add(int x,int y) return x+y+1; double add(double x,double y) return x+y-1; void main() int a=2,b=4; double c=2.6,d=7.4; cout<<add(a,b)<<","<<add(c,d)<<endl; 执行结果是:3、#include<iostream.h> class A public: int n; ; class B:virtual public A; class C:virtu
13、al 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<<endl; 执行结果是: 4、#include <iostream.h>class myclass int a,b;static int s; public:myclass(int x,int y)a=x;b=y;s+;void print()cout<<s
14、<<endl; int 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(),计算二者的重量和。(10分)3、 设计一个汽车类vehicle,包含的数据成员有车轮个数wheels和
15、车重weight。小车类car是它的派生类,其中包含载人数passenger_load。每个类都有相关数据的输出方法。在主程序中定义一个car类对象,对其车轮个数、车重、载人数进行设置并显示。(10分)一、 填空题(每空1分,共14分)(1)p1.show(); p->show() (2)公有、私有、保护 (3)class (4)抽象类 (5)成员函数、不是 (6)friend (7)11、11 (8)动态申请内存空间、释放由new申请的空间 二、 选择题(每小题1.5分,共30分)1、D 2、B 3、C 4、D 5、D 6、B 7、B 8、C 9、C 10、A 11、D 12、C 13
16、、D 14、B 15、C 16、A 17、B 18、C 19、C 20、A三、 改错题(每错2分,共6分)MyClass obj1(0); obj1.SetMember(5); obj2.SetMember(10);四、 写出下列程序的执行结果(每小题5分,共20分)(1)30 (5分)(2)7 9 (每个2.5分)(3)20 20 (每个2.5分)(4)3(2分)3(2分)3(1分)五、 编程题(每题10分、共30分)1、#include <iostream.h>#include <math.h>class rectangle /(2分)private:int x1,
17、y1,x2,y2; / (2分)public:rectangle(int xx1,int yy1,int xx2,int yy2) /(1分)x1=xx1;y1=yy1;x2=xx2;y2=yy2;int getarea() /(2分)return abs(x2-x1)*(y1-y2);void main()rectangle rect1(3,7,8,5); (2分)cout<<rect1.getarea()<<endl; (1分)2、(10分)#include <iostream.h>class car;(1分)class boat private:int
18、 weight; /(1分)public:boat(int w):weight(w) /(1分)friend int totalweight(boat b1,car c1); /(2分);class car /(1分)private:int weight; (1分)public:car(int w):weight(w);friend int totalweight(boat b1,car c1); (1分);int totalweight(boat b1,car c1) /(1分)return b1.weight+c1.weight;void main()car c1(1000);boat b
19、1(2000);cout<<totalweight(b1,c1)<<endl;(1分)3、(10分)#include<iostream.h> class vehicle / 定义汽车类 (3分) protected: int wheels; / 车轮数 float weight; / 重量 public: vehicle(int wheels,float weight); int get_wheels(); float get_weight(); float wheel_load(); void show(); ; class car:public vehicle / 定义小车类 (3分) int passenger_load; / 载人数 public: car(int wheels,float weight,int passengers=4); int get_passengers(); void show(); ; vehicle:vehicle(int wheels1,float weight1) /(1分) wheels=wheels1; weight=weight1; int vehicle:get_wheels() return wheels; float vehicle:get_weight
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026-2027学年江苏省南通市如皋市六上数学期末质量跟踪监视模拟试题含解析
- 2026-2027学年贵州省黔西县数学七上期末质量检测模拟试题含解析
- 吉林省吉林市丰满区2026年数学六年级第一学期期末复习检测模拟试题含解析
- 江西省南康区2027届八上物理期末预测试题含解析
- 2026-2027学年贵德县六上数学期末教学质量检测试题含解析
- 云南财经大学《机电一体化技术A》2026-2027学年第一学期期末试卷含解析
- 2026-2027学年湖北省咸宁市咸安区数学六年级第一学期期末质量跟踪监视试题含解析
- 2026年陕西省榆林市靖边县六年级数学第一学期期末教学质量检测模拟试题含解析
- 2027届湖南省涟源市数学七上期末复习检测试题含解析
- 河南省新乡市名校2026-2027学年七年级数学第一学期期末联考模拟试题含解析
- 江苏省无锡市2025-2026学年高二下学期期末考试生物试题(文字版含答案)
- 2026中煤集团山西有限公司面向社会公开招聘292人笔试历年常考点试题专练附带答案详解
- 云南省2026年中考英语真题
- 2026年广东事业单位招聘考试真题及答案
- 统编版小升初语文标点符号重点知识梳理 专项练习卷(含答案)
- 2026海南陵水黎族自治县县属国有企业第一批招聘60人考试模拟试题及答案详解
- 中山大学2026年强基计划面试+体育测试模拟试题及答案解析
- 2026年7月浙江高中学业水平考试化学试卷试题(含答案解析)
- 2026年广东佛山市初二地理生物会考真题试卷(含答案)
- 2026年高一历史学业水平考试知识点归纳总结(复习必背)
- 五年级下数学水中浸物问题20道pdf
评论
0/150
提交评论