《面向对象程序设计C++》期末试卷及标准答案(A)
更新时间:2024-01-14 03:58:01 阅读量: 教育文库 文档下载
《面向对象程序设计C++》期末考试试卷(A)
班级: 姓名: 学号: 分数: 题号 得分 一 二 三 四 总分 试卷说明:本套试题共四个大题,全部题目都答在答题纸上,写在其他地方均无效。
(答题纸在本套试卷的第10页上)
一、选择题(每小题2分,共40分) 1、C++是( )。
A. 面向对象的程序设计语言 B. 面向过程的程序设计语言
C. 既支持面向对象的程序设计又支持面向过程的程序设计的混合型语言 D. 非结构化的程序设计语言
2、面向对象程序设计思想的主要特征中不包括( )。
A. 封装性 B. 多态性 C. 继承性 D. 功能分解,逐步求精 3、若定义:string str; 当语句cin>>str; 执行时,从键盘输入: Microsoft Visual Studio 6.0! 所得的结果是str=( )。
A. Microsoft Visual Studio 6.0! B. Microsoft
C. Microsoft Visual D. Microsoft Visual Studio 6.0 4、考虑下面的函数原型声明:void testDefaulParam(int a,int b=7,char z='*'); 下面函数调用中,不合法的是( )。
A. testDefaulParam(5); B. testDefaulParam(5,8); C. testDefaulParam(5,'#'); D. testDefaulParam(0,0,'*'); 5、下列语句中,将函数int sum(int x, int y)正确重载的是( )。 A. float sum(int x, int y); B. int sum(int a, int b); C. float sum(float x, float y); D. double sum(int y, int x); 6、下列表示引用的方法中,( )是正确的。 已知:int a=1000;
A. int &x=a; B. char &y; C. int &z=1000; D. float &t=&a; 7、在一个函数中,要求通过函数来实现一种不太复杂的功能,并且要求加快执行速度,选用( )。
A. 内联函数 B. 重载函数 C. 递归调用 D. 嵌套调用 8、下列有关C++类的说法中,不正确的是( )。
第 1 页
A. 类是一种用户自定义的数据类型
B. 只有类中的成员函数或类的友元函数才能存取类中的私有成员 C. 在类中,如果不做特别说明,所有成员的访问权限均为私有的 D. 在类中,如果不做特别说明,所有成员的访问权限均为公用的
9、已知X类,则当程序执行到语句:X array[3];时,调用了( )次构造函数。 A. 0 B. 1 C. 2 D. 3 10、下面说法中,正确的是( )
A. 一个类只能定义一个构造函数,但可以定义多个析构函数 B. 一个类只能定义一个析构函数,但可以定义多个构造函数 C. 构造函数与析构函数同名,只要名字前加了一个求反符号(~)
D. 构造函数可以指定返回类型,而析构函数不能指定任何返回类型,即使是void类型也不可以
11、已知:print( )函数是一个类的常成员函数,它无返回值,下列表示中,( )是正确的。
A. void print( ) const; B. const void print( ); C. void const print( ); D. void print(const); 12、下面描述中,表达错误的是( )
A. 公用继承时基类中的public成员在派生类中仍是public的 B. 公用继承时基类中的private成员在派生类中仍是private的 C. 公用继承时基类中的protected成员在派生类中仍是protected的 D. 私有继承时基类中的public成员在派生类中是private的 13、设置虚基类的目的是( )。
A. 简化程序 B. 消除二义性 C. 提高运行效率 D. 减少目标代码 14、下面( )的叙述不符合赋值兼容规则。 A. 派生类的对象可以赋值给基类的对象 B. 基类的对象可以赋值给派生类的对象 C. 派生类的对象可以初始化基类的对象
D. 派生类的对象的地址可以赋值给指向基类的指针 15、关于虚函数的描述中,( )是正确的。 A. 虚函数是一个static类型的成员函数 B. 虚函数是一个非成员函数
C. 基类中说明了虚函数后,派生类中与其对应的函数可不必说明为虚函数 D. 派生类的虚函数与基类的虚函数具有不同的参数个数和类型 16、下面关于友元的描述中,错误的是( )。 A. 友元函数可以访问该类的私有数据成员
第 2 页
B. 一个类的友元类中的成员函数都是这个类的友元函数 C. 友元可以提高程序的运行效率 D. 类与类之间的友元关系可以继承
17、下列关于静态数据成员的说法,不正确的是( )。 A. 类中定义的公用静态数据成员,可以通过类的对象来访问 B. 类中定义的所有静态数据成员,都必须在类外初始化 C. 静态数据成员不是所有对象所共用的
D. 普通的成员函数可以直接访问类中的静态数据成员
18、如果表达式++i*k中的“++”和“*”都是重载的友元运算符,若采用运算符函数调用格式,则表达式还可以表示为( )。
A. operator*(i.operator++(),k) B. operator*(operator++(i),k) C. i.operator++().operator*(k) D. k.operator*(operator++(i)) 19、下面对模板的声明,正确的是( )。
A. template
A. 构造函数 B. 析构函数 C. 友元函数 D. 复制构造函数
二、填空题(前14个空,每空1分,后3个空,每空2分,共20分)
A B C 1、类和对象的关系可表述为:类是对象的 ,而对象则是类的 。
2、静态成员函数没有隐含的 ,所以,在C++程序中,静态成员函数主要用来访问静态数据成员,而不访问非静态成员。 D E 3、在图1中,A,B,C,D,E,F均是类,其中属于单继承的派生类有 ,属于多F 继承的派生类有 ,类F的基类有 ,类A的派生类有 。
图1 类的继承层次图
4、如果只想保留公共基类的一个复制,就必须使用关键字 把这个公共基类声明为虚基类。
5、从实现的角度来讲,多态性可以划分为两类: 和 。 6、如果一个类包含一个或多个纯虚函数,则该类称为 。
7、若要把void fun()定义为类A的友元函数,则应在类A的定义中加入语句 。
8、列出C++中的两种代码复用方式: 和 。 9、析构函数的作用是 。 10、假定A是一个类名,则该类的拷贝构造函数的原型说明语句为: 。 11、后置自增运算符“++”重载为类的成员函数(设类名为A)的形式为: 。
第 3 页
三、阅读下面4个程序,写出程序运行时输出的结果。(共13分) 1、
#include
p=a; a=b; b=p; }
void exchange(int &a, int &b, int &c) { if( a
int main()
{ int a=12,b=89,c=56; exchange(a, b, c);
cout<<\ return 0; } 2、
#include
A( ) { cout << \}; class B { public:
B( ) { cout <<\ };
class C: public A { public:
C( ) { cout << \private:
第 4 页
B b; };
int main ( ) {
C obj; return 0; } 3、
#include
A(){cout<<\
virtual ~A(){cout<<\};
class B: public A {public:
B(int i)
{ cout<<\ }
virtual ~B() { } private:
char *buf; };
int main()
{ A *a=new B(15);
delete a; return 0; } 4、
#include
buf=new char[i];
delete []buf;
cout<<\
第 5 页
正在阅读:
《面向对象程序设计C++》期末试卷及标准答案(A)01-14
总工会党委书记党建工作述职报告02-25
谭里兵--门系统机械故障分析与研究01-11
2016金融学硕士各高校排名分析07-20
离婚协议书精选5篇03-23
优等练习题(二)12-07
aspen高级教程第7章 分离单元模拟PartA - 图文12-17
2000吨垃圾渗滤液两级DTRO设计方案解析 - 图文05-01
海南省2016年司法考试《卷三》模拟试题05-18
- exercise2
- 铅锌矿详查地质设计 - 图文
- 厨余垃圾、餐厨垃圾堆肥系统设计方案
- 陈明珠开题报告
- 化工原理精选例题
- 政府形象宣传册营销案例
- 小学一至三年级语文阅读专项练习题
- 2014.民诉 期末考试 复习题
- 巅峰智业 - 做好顶层设计对建设城市的重要意义
- (三起)冀教版三年级英语上册Unit4 Lesson24练习题及答案
- 2017年实心轮胎现状及发展趋势分析(目录)
- 基于GIS的农用地定级技术研究定稿
- 2017-2022年中国医疗保健市场调查与市场前景预测报告(目录) - 图文
- 作业
- OFDM技术仿真(MATLAB代码) - 图文
- Android工程师笔试题及答案
- 生命密码联合密码
- 空间地上权若干法律问题探究
- 江苏学业水平测试《机械基础》模拟试题
- 选课走班实施方案
- C++
- 程序设计
- 期末
- 试卷
- 面向
- 对象
- 答案
- 标准
- 街头镇中心小学语言文字工作实施方案
- 第四章 投资性房地产课堂练习
- 远程教育学院《大学语文》入学考试辅导资料
- 机械工艺及夹具设计(高起专)阶段性作业1
- 运营管理题库
- 大一高数习题和答案
- 六年级上册数学说课稿-分数除法人教版
- VTSP-SV 2017 Data Center Virtualization Fundamentals
- 换流阀本体安装(工艺编号:0102090401) - 图文
- 推进公共就业服务体系的建设
- 学做一个快乐的教师
- 2012C语言程序课程设计备选题目
- 铅球的最后用力教学说课教案
- 高级数控铣工加工中心操作工模拟试题4
- 谷歌GAE实验报告 - 图文
- 2017浙江省高考压轴卷 数学(理)附答案解析
- 高中英语单元词汇整体教学模式的探讨(2012年)
- 精选题1 - 轴向拉压
- 部编版小学语文三年级上册第三单元 基础知识必记
- 昆明经典方言大全