《面向对象程序设计C++》期末考试试卷
更新时间:2023-09-02 00:04:01 阅读量: 教育文库 文档下载
面向对象程序设计期末考试试卷
《面向对象程序设计C++》期末考试试卷 一、选择题(每小题3分,共48分。)
01、下列关于C++函数的叙述中,正确的是( )。
A)每个函数至少要具有一个参数 B)每个函数都必须返回一个值 C)函数在被调用之前必须先声明 D)函数不能自己调用自己
02、下列关于类和对象的叙述中,错误的是( )。
A)一个类只能有一个对象 B)对象是类的具体实例 C)类是对某一类对象的抽象 D)类和对象的关系是一种数据类型与变量的关系 03、在C++中,用于实现运行时多态性的是( )。
A)内联函数 B)重载函数 C)模板函数 D)虚函数 04、下列关于运算符重载的叙述中,正确的是( )。
A)通过运算符重载,可以定义新的运算符 B)有的运算符只能作为成员函数重载
C)若重载运算符+,则相应的运算符函数名是+ D)重载二元运算符时,必须声明两个形参
05、对于语句 cout<<x<<endl;错误的是描述是( )。
A)“cout”是一个输出流对象 B)“endl”的作用是输出回车换行 C)“x”是一个变量 D)“<<”称作提取运算符
06、有如下类声明,则类MyDERIVED中保护的数据成员和成员函数的个数是( )。 class MyBASE { private: int k;
public: void set(int n){ k=n;}
int get( )const{ return k;} }; class MyDERIVED: protected MyBASE
{ protected: int j;
public: void set(int m, int n){ MyBASE::set(m); j=n;} int get( ) const { return MyBASE::get( )+j; } };
A)4 B)3 C)2 D)1
07、已知在一个类体中包含如下函数原型: Volume operator-(Volume)const;,下列关于这个函数的叙述中,错误的是( )。
A)这是运算符-的重载运算符函数 B)这个函数所重载的运算符是一个一元运算符
C)这是一个成员函数 D)这个函数不改变类的任何数据成员的值
08、执行如下的程序段后,输出结果是( )。
cout.fill('*'); cout.width(6); cout.fill('#'); cout << 123 << endl; A)###123 B)123### C)***123 D)123***
09、在下列函数原型中,可以作为类AA构造函数的是( )。 A)void AA(int); B)int AA(); C)AA(int)const; D)AA(int);
10、下面四个选项中,( )是用来声明虚函数的。
A)virtual B)public C)include D)using namespace 11、实现运行时的多态性要使用( )。
A)重载函数 B)构造函数 C)析构函数 D)虚函数
12、要实现动态联编,必须通过( )调用虚函数。 A)对象指针 B)成员名限定 C)对象名 D)派生类名
13、以下( )成员函数表示纯虚函数。
A)virtual int vf(int); B)void vf(int)=0; C)virtual void vf()=0; D)virtual void vf(int){}
14、有如下类声明:class XA
{ private: int x; public: XA(int n){ x=n;} };
class XB: public XA
{ private: int y; public: XB(int a,int b); };
在构造函数XB的下列定义中,正确的是( )。
A)XB::XB(int a,int b): x(a),y(b){ } B)XB::XB(int a,int b): XA(a),y(b){ } C)XB::XB(int a,int b): x(a),XB(b){ } D)XB::XB(int a,int b): XA(a),XB(b){ }
15、在表达式 x+y*z中, + 是作为成员函数重载的运算符,* 是作为非成员函数重载的运算符。则 operator+ 有 个参数,operator* 有 参数。( )
面向对象程序设计期末考试试卷
A)2、2 B)2、1 C)1、2 D)1、1
16、应在下列程序划线处填入的正确语句是( )。 class Base
{ public:
void fun(){cout<<"Base::fun"<<endl;} }; class Derived:public Base
{ void fun() { //显示调用基类的函数fun() A)fun(); B)Base.fun(); C)Base::fun(); D) Base->fun();
二、填空题(每空2分,共20分。)
17、面向对象程序设计有四个主要特点,即抽象、封装、____和____。
18、非成员函数应声明为类的____函数才能访问这个类的 19____成员。
20、在用class____。
21、运算符重载函数可能是类的____函数,也可以是类的____ 22__,与之作用相同的控制符名称是__ __。
23、含有纯虚函数的类称为
四、编程题(12分)
29、编写一个程序计算“三角形、正方形、圆形”三种图形的面积,要求:
面向对象程序设计期末考试试卷
a)抽象出一个基类base;b)在其中说明一个虚函数用来求面积;c)利用派生类定义“三角形、正方形、圆形”;d)编写主函数并测试。
参考答案
一、选择题(每小题3分,共48分。)
01-05 C A D B D
06-10 B B A D A
11-16 D A C B C C
二、填空题(每空2分,共20分。)
17、继承、多态性 18、友元 19、私有
20、private或私有 21、成员、友元
22、width/setw 23、抽象类
三、程序的填空、程序的执行(每题4分,共20分。)
24、counter operator + (counter c)
25、virtual
26、23,23
27、ABC
28、XY
四、编程题(12分)
29、 #include <iostream> using namespace std; class base { public: virtual float area() const { return 0; } }; class triangle: public base { protected: float bian,height; public: triangle(float a=0, float h=0) { bian=a; height=h; } virtual float area() const { return bian*height/2; } }; class square: public base { protected: float bian; public: square(float a=0) { bian=a; } virtual float area() const { return bian*bian; }
面向对象程序设计期末考试试卷
}; class circle: public base { protected: float radius; public: circle(float r=0) { radius=r; } virtual float area() const { return 3.14*radius*radius; } }; int main() { triangle t(3,4); square s(5); circle c(2); base *p; p=&t; cout<<"triangle's area:"<<p->area()<<endl; p=&s; cout<<"square's area:"<<p->area()<<endl; p=&c; cout<<"circle's area:"<<p->area()<<endl; return 0; }
正在阅读:
《面向对象程序设计C++》期末考试试卷09-02
表观遗传学药物影响乳腺癌细胞系抑癌基因BRCA1及CHD5表达的研究07-27
污染源普查动态更新调查核查工作方案04-30
2017年全国高考文科数学试题及答案-全国卷21297004-26
CPCD30内燃叉车平衡重式叉车说明书09-22
普通高等学校2018年招生全国统一考试高考模拟调研卷理科综合能力07-01
企业先进集体事迹材料12-26
120.惠鑫城规划及单体概念方案设计说明03-24
张家窝中学学生团员推优入党制度06-02
祭奠方志敏烈士有感作文600字07-15
- exercise2
- 铅锌矿详查地质设计 - 图文
- 厨余垃圾、餐厨垃圾堆肥系统设计方案
- 陈明珠开题报告
- 化工原理精选例题
- 政府形象宣传册营销案例
- 小学一至三年级语文阅读专项练习题
- 2014.民诉 期末考试 复习题
- 巅峰智业 - 做好顶层设计对建设城市的重要意义
- (三起)冀教版三年级英语上册Unit4 Lesson24练习题及答案
- 2017年实心轮胎现状及发展趋势分析(目录)
- 基于GIS的农用地定级技术研究定稿
- 2017-2022年中国医疗保健市场调查与市场前景预测报告(目录) - 图文
- 作业
- OFDM技术仿真(MATLAB代码) - 图文
- Android工程师笔试题及答案
- 生命密码联合密码
- 空间地上权若干法律问题探究
- 江苏学业水平测试《机械基础》模拟试题
- 选课走班实施方案
- C++
- 程序设计
- 期末
- 试卷
- 面向
- 对象
- 考试