




已阅读5页,还剩12页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
南昌大学面向对象程序设计第 一学期期末考试试卷课程名称: 面向对象程序设计 适用班级:本科2002级 姓名: 学号: 班级: 专业: 计算机应用技术 学院: 信息工程学院 系别:计算机科学与技术系 考试日期:2005.1.10一、 选择题(每题2分,共20分) 得分评阅人1、在下面的函数声明中,存在着语法错误的是_。Avoid BC(int a,int) Bvoid BD(int,int)Cvoid BE(int,int5) Dint BF(int x, int y)2、假定AB为一个类,则执行“AB a(4),b3,*p2;”语句时,自动调用该类构造函数的次数为_。A3 B4 C6 D93、下列各类函数中,( )不是类的成员函数A 构造函数 B析构函数C 友元函数D 拷贝构造函数4、关于new运算符的下列描述中,()是错的A 可以用来动态创建对象和对象数组B 使用它创建的对象或对象数组可以使用delete运算符删除C 使用它创建对象时要调用构造函数D 使用它创建对象数组时必须制定初始值5、下列类声明程序段正确的是( )Aclass figurepublic:figure();figure(int have_drawn); B class linepublic:int is_on_line(int x, int y);private:int start_x = 0, start_y =0;C class rectanglepublic:int draw();int is_in_rectangle(int x, int y);private:int upper_left_x, upper_left_y, lower_right_x, lower_right_y;;D class squarepublic:void square(int x = 0,int y = 1,int len = 0);square();int draw();private:int upper_left_x, upper_left_y, side_length;6、分析下列程序段,以下几种说法中正确的是()class Apublic:virtual void f();class Bpublic:virtual void f();virtual void g();class C: public A,public Bpublic:void f();假设有指针pa、pb和pc说明如下:A* pa;B* pb;C* pc;C c;pa = &c; pb = &c; pc = &c; pa-f();pb-f();pc-f();Apa-f();pb-f();pc-f();都将实际调用C中的f();Bpa-f();pb-f();pc-f();都将实际调用A中的f();Cpa-f();pb-f();pc-f();分别实际调用A:f()、B:f()、C:f()Dpa-f();pb-f();pc-f();分别实际调用C:f()、B:f()、A:f()7、下列的()是引用调用A 形参是指针,实参是地址值 B 形参和实参都是变量C 形参是数组名,实参是数组名 D 形参是引用,实参是变量8、下述静态数据成员的特性中,()是错误的A 说明静态数据成员时前面要加修饰符staticB 静态数据成员要在类体外进行初始化C 引用静态数据成员时,要在静态数据成员名前加类名和作用域运算符D 静态数据成员不是所有对象所共用的9、下列运算符中,()运算符不能重载A &B C? :D =10、关于动态绑定的下列描述中,()是错误的A 动态绑定是以虚函数为基础的B 动态绑定是在运行时确定所调用的函数代码的C 动态绑定调用函数的操作是指向对象的指针或对象引用D 动态绑定是在编译时确定操作函数的二、判断题(每题2分,共20 分) 得分评阅人1、()函数的参数个数和类型都相同,只是返回值类型不同,这不是重载函数2、()对象数组只能赋初值,而不能被赋值3、()抽象类是没有说明对象的类4、()在公有继承中,基类中只有公有成员对派生类对象是可见的5、()构造函数和析构函数都不能重载6、()带有虛基类的多层派生类构造函数的成员初始化列表中都要列出虛基类的构造函数,这样将对虛基类的子对象初始化多次7、()当将一个类S定义为另一个类A的友元类时,类S的所有成员函数都可以直接访问类A的所有成员。8、()构造函数可以被继承,析构函数不能被继承9、()C+中允许一个基类既是直接基类又是间接基类10、()一个类属类可以作为一个普通类的派生类,也可以作为其他类属类的基类三、 写出以下各程序的运行结果(每题5分,共20分)得分评阅人1、#include class FOOpublic:FOO( int i) cout“constructing.n”;pointer = new int;*pointer = i;FOO(const FOO& other ) cout“copy constructing.n”; pointer = new int; *pointer = *other.pointer;FOO( ) cout“destructing.n”; delete pointer;int get()return *pointer;private:int* pointer;void display(FOO obj )coutobj.get()“n”;void main( )FOO obj1(15);FOO obj2 = obj1;display(obj2);2、#includeclass Sample int n; static int sum; public: Sample(int x)n = x; void add()sum += n; void disp()coutn=n,sum=sumendl; ;int Sample:sum=0; void main() Sample a(2), b(3), c(5); a.add(); a.disp(); b.add(); b.disp(); c.add(); c.disp();3、#include class Apublic:A()virtual void f()cout“A:f() called.n”;class B: public Apublic:B()f();void g()f();class C: public Bpublic:C()virtual void f()cout“C:f() called.n”;void main()C c;c.g();4、#include class A public: A(char *s) cout s endl; A() ;class B:public A public: B(char *sl,char *s2) : A(sl) cout s2 endl; ;class C:public Apublic: C(char *sl,char *s2) : A(sl) cout s2 endl; ;class D:public B,public Cpublic: D(char *sl,char *s2,char *s3,char *s4) : B(sl,s2), C(sl,s3) cout s4 endl; void main () D d(class A,class B,class C,class D);四、程序分析题(每题5分,共20分)得分评阅人1、#include void main()cout“This is a c+ program!n”;修改该程序(但不允许对main()作任何修改),使该程序能输出:Hello,everyone!This is a c+ program!Goodbye!2、请修改以下程序的错误,使得程序可以连续五次输出字符串string#include void main()char string30 = “Nanchang Universityn”;char* ptr = string;for(int loop = 0; loop= 4; loop+1)while (*ptr)cout*ptr;ptr = ptr + 1;3、#include class Apublic:void set(int a,int b)m = a; n =b;void show()coutm“,”nendl;protected:int m,n;class B:public Aint s;public:void sets()s = m*n;void shows()coutsendl;void main()B obj;obj.set(2,3);obj.show();obj.sets();obj.shows();在这个程序中,类B的函数sets()能否访问类A中的变量m和n?为什么?如果在类A中把m和n定义为私有成员,上面的程序能否通过编译,为什么?4、# includetemplateType WD(Type a, int n)Type m= a0 ; for(int i=l;im) m = ai; return m;请说出这是什么函数及它的功能。五、 程序设计题(每题10分,共20分)得分评阅人1、 设计一个平面几何中的位置类position,要求该类提供移动,求到另一点距离(包括到原点距离),求x坐标,求y坐标,输出坐标值的操作,并演示该类提供的各种操作。2、 下列shape类是一个表示形状的抽象类,area( )为求图形面积的函数,
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 小目标企业咨询方案
- 住宅建筑概念室内方案设计
- 彩色建筑竞赛方案设计模板
- 衬板工技能比武考核试卷及答案
- 夏日婚礼活动策划方案模板
- 东莞从事入户咨询方案
- 地面岩棉施工方案及工艺
- 石家庄管道施工方案范本
- 智能建筑利用方案设计
- 商丘建筑消防方案设计公司
- Unit4SectionA2a2d课件-人教版九年级英语全一册
- 幼儿园安全事故责任认定
- 房地产投资公司总经理岗位职责
- 展会礼仪培训课程
- 学校违规通报管理制度
- 2025年河北省公需课《双碳目标下绿色能源转型趋势》答案
- 2025-2030中国再生金属行业市场深度调研及发展策略与风险研究报告
- 客户转让合同协议书范本
- 光伏发电工程竣工最终验收报告
- 2025-2030中国篮球运动鞋行业市场发展趋势与前景展望战略研究报告
- 发改价格〔2007〕670号建设工程监理与相关服务收费标准
评论
0/150
提交评论