2016级《面向对象程序设计》期末考试A卷 下载本文

内容发布更新时间 : 2024/5/2 23:08:42星期一 下面是文章的全部内容请认真阅读。

装订线————————————————————————————————————————————————————— 韶关学院2016~2017学年第二学期

信息科学与工程学院《面向对象程序设计》期末试卷(A卷)

年级:____专业:_______ 班级:______ 学号:_______ 姓名:________

题 一 二 三 四 五 签名 号 总分 得 分 注:1、共100分,考试时间120分钟。 2、此试卷适用于16级信管、物联网工程、软件工程等专业。 一 得 分 阅卷教师 一、填写题(10分,每空1分) 1、面向对象程序设计是一种新型的程序设计范型,这种范型的主要特征是 2、面向对象程序设计的4个基本特征可用八个字表示:

3、类的继承方式有 三种

4、c++中包含有几个预定义的流对象,其中标准输入流对象和标准输出流对象分别是 和

5、c++中提供了三个文件流类,能同时用于文件输入、输出的文件流类是 6、c++提供了两个用于读写二进制文件中一组数据的函数,其中用于读操作的函数是 ,写操作的函数是

7、c++处理异常的机制是由 三个部分组成,分别由 三种语句来完成。 二 得 分 阅卷教师 二、单选题(20分,每小题2分,请将答案填入下表中) 1. 2. 3. 4. 5. 6. 7. 8. 9. 10.

1.C++中函数重载是指( )。

A. 两个或两个以上的函数取相同的函数名,但形参的个数或类型不同 ; B. 两个以上的函数取相同的函数名和相同的参数个数,但返回值不同; C.两个以上的函数名字不同,但形参的个数和类型相同; D.两个函数取相同的名字,并且函数的类型也相同。

《面向对象程序设计》期末考试试卷(A卷)第 1 页 共 8 页

2.有函数原型void ff(int a ,int b=7 , char c=’*’ );下面的函数调用中,属于不合法调用的是( ) 。

A.ff(5); B.ff(6,10); C.ff(10,’\\n’ ); D.ff(9,11,’p’);

3.假定STU为一个类,当执行语句 STU st;时,系统将自动调用该类的( )。 A.拷贝函数 B.无参构造函数 C.有参构造函数 D.初始化函数 4.下列关于静态成员函数描述中,正确的是( ) 。 A.在静态成员函数中可以使用this指针 B.在静态成员函数中可改变静态数据成员的值

C.静态成员函数只能在类外定义 D静态成员函数不属于类 5.友元的作用之一是( )。

A.提高程序的运行效率 B.加强类的封装性 C.实现数据的隐闭性函数的种类

6.设置虚基类的目的是( )。

A.简化程序 B.提高运行效率 C.减少目标代码 D.消除二义性 7.关于虚函数,正确的描述是( ) 。

A.析构函数不能是虚函数 B.构造函数不能是虚函数 C.友元函数可以定义成虚函数 D.静态成员函数可以是虚函数 8.下列关于纯虚函数和抽象类的描述,错误的是( ) 。 A.纯虚函数是一种特殊的函数,它允许没有具体实现; B.具有纯虚函数的类称为抽象类; C.若基类是抽象类,则由它派生的子类都是抽象类;

D.抽象类只能作为基类使用,其纯虚函数的实现由派生类给出; 9.能用友元函数重载的运算符是( ) 。 A.+ B.= C.[] D.->

10.进行文件操作时,需要包含的头文件是( ) A.iostream.h B.stdio.h C.fstream.h D.math.h

三 得 分 阅卷教师 三、阅读下列程序,写出运行结果(每小题5分,共20分) 1. #include using namespace std;

class test

{ private: int x; float y; public:

test ( int n,float m) { x=n ; y=m;}

《面向对象程序设计》期末考试试卷(A卷)第 2 页 共 8 页

.增加成员

D test (const test &t) { x=t.x ; y=t.y ;} void show( )

{ cout<<”x=”<

int main()

{ test t1(10 , 3.9); test t2=t1; t1.show( ) ; t2.show( ) ; return 0; }

运行结果:

2. #include using namespace std ; class toy { public:

toy(int q,int p)

{ quantity=q ; price=p ;} int get_quantity( ) { return quantity;} int get_price ( ) { return price;} private:

int quantity, price; };

void main( )

{ toy op[3][2]={toy(10,20), toy(15,22), toy(25,40), toy(45,29), toy(60,78), toy(55,120)}; for(int i=0;i<3;i++)

{ cout<

《面向对象程序设计》期末考试试卷(A卷)第 3 页 共 8 页