资源预览内容
第1页 / 共12页
第2页 / 共12页
第3页 / 共12页
第4页 / 共12页
第5页 / 共12页
第6页 / 共12页
第7页 / 共12页
第8页 / 共12页
第9页 / 共12页
第10页 / 共12页
亲,该文档总共12页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
C+程序设计第 1 页 共 12 页一 选择题(每题 1 分,共 10 分)1、类 CStudent 的拷贝构造函数的声明语句为 D 。ACStudent &CStudent (const CStudent other) BCStudent CStudent(const CStudent other)CCStudent (CStudent *other) DCStudent (const CStudent &other)2、类的友元函数能访问该类的 C 。A私有成员 B保护成员 C所有成员 D公有成员3、下面关于静态数据成员的描述中,正确的是 A 。 A静态数据成员可以直接用类名调用B静态数据成员可以在类体内进行初始化C静态数据成员不能受 private 控制符的作用D类的不同对象有不同的静态数据成员值4、 当使用 fstream 流类定义一个流对象并打开一个磁盘文件时,文件的隐含打开方式为_C。Aios:in Bios:out Cfstream:in | fstream:out D没有指定打开方式5、若 char p20=”hello world”;则输出该字符串正确的语句是_ D _。Acoutclass Array .;对该类模板实例化正确的是 A 。AArray x; BArray x;Ctemplate x; DArray x;上 海 交 通 大 学 试 卷(A)参考答案( 2009 至 2010 学年 第_二_学期)班级号_ 学号_ 姓名 课程名称 C+程序设计 成绩 C+程序设计第 2 页 共 12 页8、公有成员提供了类对外部的接口,私有成员是类的内部实现,而 D 不许外界访问,但允许派生类的成员访问,这样既有一定的隐藏能力,也提供了开放的接口。A公有成员 B.私有成员 C.私有成员函数 D.保护成员9、假定 AB 为一个类,则执行 AB a(2), b3, *p; 语句时共调用该类构造函数的次数为 C 。 A. 1 B. 3 C. 4 D. 5 10、如果 A 是已经定义好的一个类,函数 f 的原型为 A f(). r2 是 A 类的一个对象,在函数f 中执行 return r2 时,系统将自动调用 B 。A.缺省的构造函数 B.拷贝构造函数 C.赋值运算符重载函数 D.不调用任何函数二 看程序,写结果(每题 5 分,共 35 分)1、请写出下列程序运行结果class ADD friend ADD operator+(ADD op);friend ADD operator+(ADD &op, int n);public:ADD(int i = 0, int j = 0) a = i; b = j;void Show() const cout ”;pBase-Fly();DragonFly *pDragon = new DragonFly();pBase = pDragon;oBase = *pDragon;pBase-Fly();pBird-Fly();pDragon-Fly();oBase.Fly();BirdFly-Class BirdFly:Fly()-Class DragonFlyFly:Fly()-Class BirdFly:Fly()-Class DragonFlyFly:Fly()-Class BaseFly:Fly()-C+程序设计第 6 页 共 12 页5、写出下列程序执行结果class Point friend bool operator!=(const Point &p1, const Point &p2) return p1.x+p1.y != p2.x+p2.y ; private:int x, y; public: Point(int a = 1, int b = 1) x = a; y = b; cout 0; i /= 3)try func(i);cout class Sample protected:T n; public: Sample(T i) n = i; cout class model: public Sample T m;public:model(T t1, T t2): Sample(t1) m = t2; cout s (20, 30); s.disp(); cout a ) cout T add ( T x, T y ) return x + y ; int main()int i = 5, j = 6;double y1 = 1.111222, y2 = 2.22222222222;cout using namespace std;int main() container *bptr; /定义抽象类指针 bptrsphere s_obj(4); /创建球体对象 s_obj,半径为 4;sector c_obj(2 ,270); /创建圆柱体对象 c_obj,半径为 2,角度为 270 度bptr = &s_obj;cout area() area() endl;得到的屏幕输出应为:球体表面积:201.062扇形面积:9.423评分标准:正确定义基类(2 分):一个全局共享的常量 PI 和纯虚函数 area正确定义扇形类(2 分)正确定义球类(2 分)正确实现各成员函数:每个成员函数 1 分C+程序设计第 12 页 共 12 页3、整型数组 int a10中随机地存放有数字 09(数字可以重复) 。现请设计一个类,它的功能是在数组 a 中顺序地抽取 5 个数字,使这 5 个数字组成的5 位数为最大(注意:这 5 个数字的先后顺序必须同其在原数组 a10中的先后顺序相同) ,返回这个五位数。 (5 分)类的定义如下:class max int data10;public:max(int *a);int result();如果数组 a10 = 4, 7, 8, 0, 8, 6, 2, 4, 9, 1 ,定义对象 max m(a),并执行语句 a.result(),则返回值为 88691。请补充构造函数和 result 函数。评分标准:构造函数的实现 1 分result 函数的实现 4 分
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号