第一范文网 - 专业文章范例文档资料分享平台

南邮 面向对象程序设计及C++ 期末试卷A

来源:用户分享 时间:2025/5/19 5:46:21 本文由loading 分享 下载这篇文档手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。

南京邮电大学 学年第 二 学期

《面向对象程序设计及C++》(期末)试卷1

院(系) 班级 学号 姓名 (★温馨提醒:

自觉遵守考试规则,诚信考试,绝不作弊装订线内不要答 ① 这是试题纸,教师不批改,请将所有最终答案写在答题纸上 ② 请在试题纸和答题纸上均完整填写班级、学号、姓名信息 ③ 考试结束时请将答题纸、试题纸及草稿纸一并交来 谢谢合作!祝同学们取得好成绩!)

得 分 一、填空题(共10分,每空1分)

1、开发C++程序与开发其他高级语言的程序一样,包括编辑、编译、 ① 和 ② 四个步骤。

2、C++语言中的标准输出流对象是 ③ ,在程序中用于代表标准输出设备。

3、对于已存在的定义“int *ptr=new int [10] ;”,应该用 ④ 语句释放动态内存空间。

4、C++语言提供了处理异常的有效机制,通过 ⑤ 抛出异常,通过 ⑥ 检测异常、通过catch捕捉并处理异常。

5、类的成员有3种访问属性,其默认的访问属性为 ⑦ ;访问属性为___⑧ 的成员既可被派生类继承又保持了封装和信息隐藏性。(请

题 填关键字)

6、C++支持两种多态性,其中函数重载和运算符重载用于实现 ⑨ ,而虚函数用于实现 ⑩ 。

得 分 二、单选题(共20分,每题2分)

1、假设已有定义:const char *name=\下面语句中错误的

是 。

A、name[3]= 'a';

B、name=\ D、cout<

C、name=new char[5];

2、设有语句void f(int a[10],int &x); int y[10],*py=y,n=10;

则对函数f的正确调用语句是 。

A、f(py[10],n); B、f(py,n); C、f(*py,&n); D、f(py,10); 3、下列不正确的重载函数是 。 A、int print(int X); 和 void print(float X); B、int disp(int X); 和 char disp(int Y) const;

C、void disp(char * str,int Y);和 int disp(char * s,int X); D、int view(int X , int y); 和 int view(int X); 4、有关this指针的描述中,错误的是 。 A、this指针可以在程序中显式使用 B、this指针是在使用对象时由系统自动生成

C、this指针是指向当前对象的指针 D、this指针是指向成员函数的指针

5、关于成员函数特征的下列描述中, 是错误的。

A、成员函数一定是内联函数 B、成员函数可以重载 C、成员函数可以设置缺省参数值 D、成员函数可以是静态的 6、以下关于构造函数的叙述不正确的是 。

A、构造函数名必须和类名一致 B、构造函数在定义对象时自动执行 C、构造函数无任何函数类型 D、一个类的构造函数有且仅有一个 7、下列哪一项不能访问基类的保护成员 。

A、基类的友元函数 B、派生类的对象 C、基类的成员函数

D、公有派生类的成员函数

8、下面有关基类与公有派生类的赋值兼容原则,正确的是 。 A、公有派生类对象不能赋给基类对象 B、基类对象能赋给其公有派生类的引用 C、基类对象不能赋给公有派生类对象 D、公有派生类对象地址不能赋给基类指针变量

9、______是一个在基类中说明的虚函数,它在该基类中没有定义,但要求任何派生类都必须定义自己的版本。

A、虚析构函数 B、虚构造函数 C、纯虚函数 D、静态成员函数

10、假定要对类AB以友元函数形式重载加号运算符,实现两个AB类对象的加法,并返回相加结果,则该函数的声明语句为:???????????????? 。

A、 friend AB ?operator+(AB ?& a , AB ?& b);??? B、friend operator+(AB ?a)?;?

C、friend AB ?operator+(AB ?& a)?; D、friend AB ?& operator+( );

得 分 三、读程题(共30分,每空2分)

1、以下程序运行后的输出结果第一行是 (1) ,第二行是 (2) 。

#include

using namespace std; int i=0; void main()

{ int i=5; cout<

cout<<::i<

2、以下程序运行后的输出结果第一行是 (3) ,第二行是 (4) ,第三行是 (5) 。

#include

using namespace std; class base { int n; public:

base(int i) {

n=i; }

int getn( ) {return n;} friend int add(base &s1,base };

int add(base &s1,base s2) {

int result= +; int t=; =; =t; return result; }

void main( ) {

base A(29),B(11); cout<

s2);

南邮 面向对象程序设计及C++ 期末试卷A.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.diyifanwen.net/c6p9r36f4d21xkfw968ko77t6k14pg601b21_1.html(转载请注明文章来源)
热门推荐
Copyright © 2012-2023 第一范文网 版权所有 免责声明 | 联系我们
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:xxxxxx 邮箱:xxxxxx@qq.com
渝ICP备2023013149号
Top