ImageVerifierCode 换一换
格式:DOCX , 页数:8 ,大小:17.50KB ,
资源ID:6723814      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/6723814.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(第8章单元测试1.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

第8章单元测试1.docx

1、第8章单元测试1第8章单元测试卷1 选择题(1) 以下有关构造函数的叙述不正确的是( D )。A. 构造函数名必须和类名一致 B. 构造函数在定义对象是自动执行C 构造函数无任何函数类型 D. 在一个类中构造函数有且仅有一个(默认的只有一个)(2) 以下叙述中正确的是( A )A. 在类中(class),不作特别说明的数据成员均为私有类型B. 在类中,不作特别说明的数据成员均为公有类型C. 类成员的定义必须是成员变量在前、成员函数在后D. 类成员的定义必须放在类定义体内部(也可以在内体外)(3) 有以下类的定义,其中出错的位置是(B )class Csample public:Csample(

2、); / A int a=10; / B Csample(int a0); / C Csample(); / D;(4) 以下叙述中不正确的是( C )A.在类定义中,通常是用成员变量描述对象的属性; 用成员函数描述对象的行为B.类的一个成员只能具有一种访问控制属性C.构造函数和析构函数是特殊的成员函数,因此不允许重载(构造函数可以重载)D.通过对象只能访问类的公有成员(5) 以下属于析构函数特征的是( D )A. 析构函数名与类名不能相同(必须相同) B. 析构函数的定义必须在类体内(也可以在类体外)C. 析构函数可以带或不带参数(不可以) D. 在一个类中析构函数有且仅有一个(6) 设有以

3、下类和对象的定义:class Apublic: int m;.;A k1,k2,*p1,*p2;则下面针对成员变量m的引用,正确的是( A )A. k1.m=1; B. k2-m=2; C. p1.m=3; D. (*p2)-m=4;(7) 以下叙述中不正确的是( B )A. 构造函数和析构函数都是成员函数B. 构造函数和析构函数都可以带参数C. 程序中不能直接调用构造函数,但可以调用析构函数D. 构造函数可以重载但析构函数不可以(8) 设A为test类的对象且赋有初值,则语句test B=A;表示( C )A. 语法错误 B. 为对象A定义一个别名C. 将对象A复制给对象B D. 仅说明B和

4、A属于同一个类(9) 以下不属于类成员函数的是( C )A.构造函数 B.析构函数 C.友员函数 D.虚函数(10) 以下有关成员函数特征的叙述不正确的是( A )A.成员函数一定是内联函数 B.成员函数可以重载C.成员函数可以设置缺省数值 D.成员函数可以是静态的(11) 友元函数的作用是( A )A.提高程序的效率 B.加强类的封装性C.实现数据的隐蔽性 D.增加成员函数的种类(12) 以下叙述中不正确的是( B )A. 一个类的友元函数可以无条件的使用这个类的私有成员B. 静态成员函数可以直接访问非静态数据成员C. 不可以声明抽象类的对象,但可以声明抽象类的指针变量D. 静态数据成员为类

5、的所有对象所共享(13) 以下关于静态成员函数的叙述不正确的是( D )A. 静态成员函数属于整个类B. 对静态成员函数的引用允许使用对象名C. 在静态成员函数中不能直接引用类的非静态成员D. 使用类名可以直接调用其静态成员函数(14) 以下关于友元函数的叙述不正确的是( A )A. 友元函数提供了类之间数据共享的一个途径(静态成员)B. 一个友元函数可以访问任何类的任何成员C. 友元函数破坏了数据的封装D. 友元函数增加了程序设计的灵活性2.填空题(1) 类的成员按访问权限可分为三类: 公有 、 私有 、 保护 。(2) 构造函数的主要作用是 对对象初始化,析构函数的主要作用是 注销对象并进

6、行善后工作 。(3) 类是对象的 抽象 ;而对象则是类的具体 实例 。(4) 如果不做特殊说明,类成员的默认访问权限是 私有 ; 结构成员的默认访问权限是 公有 。(5) 在C+中定义类时,通常是利用 变量 描述对象的“特征”; 利用 函数 描述对象的“行为”。(6) 在定义对象的同时初始化其成员变量,需要利用 构造 函数,用于初始化变量的值可以是固定的常量,也可以通过 参数 获得。(7) 若类中没有明确定义析构函数,清除对象的工作 系统 来完成,原因是 删除对象 。(8) 以下程序的功能是:找出数组中的最小值并输出,请填空。#includeclass sample int x; public

7、: void setx( int x0) x=x0; friend int fun( sample b , int n) int m= b0 ; for(int i=0; in;i+) if(bi.xm) m= bi.x ; return m; ;void main()sample a6; int arr=12,6,21,7,10,9;for( int i=0;i6;i+) ai.setx(arri);coutfun( arr.6 )endl;3. 改错题(1) 分析以下程序的错误原因,给出修改方案使之能正确运行。#includeclass CC double x;public:CC(doub

8、le x0 ) x=x0; void disp() cout”x=”xendl; ;void main() CC demo1(5); /CC demo1(5 )demo1.disp();CC demo2; / CC demo2(3);demo2=demo1+1; /demo2=demo1 ;demo2.disp(); (2) 下面的程序定义了一个Point类,找出程序中的错误语句并改正。#includeclass Pointprivate:int x,y; public:Point(int a,int b) x=a;y=b; void show() coutx= x y=yendl;void

9、main() Point a(24,50); a.show();(3) 以下程序的目的:利用静态成员统计程序中共创建了多少个对象,输出统计结果。请改正程序中的错误,使之能正确运行。#includeclass tt static int count=0;/static int count 静态数据成员 tt( ) count+; public: void show ( ) coutNow, there are count objectes.n; ;int tt:count;/ int tt:count=0; 必须初始化void main()tt a1,a2; a1.show(); tt a3;

10、a3.show();正确的是:#includeclass tt static int count;public: tt( ) count+; void show ( ) coutNow, there are count objectes.n; ;int tt:count=0;void main()tt a1,a2; a1.show(); tt a3; a3.show();5. 编程序1. 设有一描述做标点的point类,其私有变量x和y代表一个点的x、y坐标值。请编写程序实现以下功能:利用构造函数传递参数,在定义对象时将x、y坐标值初始化为(60,75),并利用成员函数display()输出这

11、一坐标值;利用公有成员函数setpoint()将坐标值修改为(80, 150),并利用成员函数输出修改后的坐标值。一题答案:#includeclass pointint x,y;public: point(int a,int b) x=a;y=b; void display() coutxyendl; void setpoint(int m,int n) x=m; y=n; ;void main() point a(60,75); a.display(); a.setpoint(80,150); a.display();2. 有一圆环,其中小圆半径为3.5,大圆半径为8。编程定义一个circle类,含有私有变量半径r,能够初始化r、计算圆面积。主函数中通过定义2个对象(大圆和小圆)来计算出圆环的面积。二题答案:#includeclass circle float r,s1,s2;public: circle(float a) r=a;float push() return s1=3.14*r*r;float push1() return s2=3.14*r*r;void main()circle a(8); circle b(3.5);a.push();b.push1();cout输出圆环的面积a.push()-b.push1()endl;

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1