网站大量收购闲置独家精品文档,联系QQ:2885784924

西安电子科技大学2021春 面向对象程序设计(C++)(大作业)答案.doc

西安电子科技大学2021春 面向对象程序设计(C++)(大作业)答案.doc

此“教育”领域文档为创作者个人分享资料,不作为权威性指导和指引,仅供参考
  1. 1、本文档共8页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

第PAGE1页(共4页)

学习中心/函授站_

姓名 学号

西安电子科技大学网络与继续教育学院

2021学年上学期

《面向对象程序设计(C++)》期末考试试题

(综合大作业)

题号

总分

题分

10

20

20

20

30

得分

考试说明:

1、大作业试题于2021年4月23日公布:

学生于2021年4月23日至2021年5月9日在线上传大作业答卷;

上传时一张图片对应一张A4纸答题纸,要求拍照清晰、上传完整;2、考试必须独立完成,如发现抄袭、雷同均按零分计;

3、答案须用《西安电子科技大学网络与继续教育学院标准答题纸》手写完成,要求字迹工整、卷面干净。

一、简答题(共10分)

1.(3分)什么是引用?它与指针有什么区别?

答:(任选一个版本)

答案版本1:

引用是为已存在的变量取了一个别名,引用和引用的变量共用同一块内存空间。

1)引用必须被初始化,指针不必。所以不存在指向空值的引用,但是存在指向空值的指针。

2)引用初始化以后不能被改变,指针可以改变所指的对象。

答案版本2:

引用是某个变量或对象的别名。

(1)引用不是变量,它不占据内存空间,它本身没有内存地址。引用只是被引用的变量或对象的替身。

(2)引用与指针的区别在于应用不是变量,而指针是变量。没有引用的引用,却有指针的引用。

2.(3分)C++提供了哪些循环语句?它们各自的特点是什么?

答:C++提供了三种循环语句for、while和do-while。

while循环语句先判断是否满足循环条件,如果满足循环条件,则执行一次循环体,再判断是否执行下一次循环,否则退出循环。

do-while循环语句先执行一次循环体后再判断是继续执行循环体还是退出循环。

for循环先设置循环变量的初值,再判断是执行循环体还是退出循环体。如果执行了循环体,再改变循环变量值后,判断是执行下一次循环体还是退出循环,依此类推。

3.(4分)构造函数的作用是什么?在创建派生类的对象时,应按照怎样的顺序调用构造函数?

答:构造函数的作用是创建对象并对其进行必要的初始化。

构造函数调用顺序:基类构造函数、子对象类构造函数(如果有)、派生类构造函数。

二、填空题(每空2分,共20分)

1.C++程序中的数据可以分为两大类,其中常量 是指在程序执行过程中值不改变的数据;变量是程序中用于存储信息的单元,并对应于某个内存空间。

2.C++中函数之间传递参数有值传递 和引用传递 两种方式。

3.假设x=5,y=0,z=3,则表达式!x||y++z的值为0,执行表达式后y的值为1。

4.下列程序在构造函数和析构函数中申请和释放类的私有成员,请完成该类的实现。

classMyClass {private:

int*x;public:

MyClass(inta);

~MyClass();

};

MyClass::MyClass(inta){x=newinta ;}MyClass::~MyClass(){deletex;}

5.在C++中,类A的每一个非静态成员函数都有一个隐藏的指针类型的形参this ,它指向当前正在操作的对象,其类型为A*const。

三、选择题(每题2分,共20分)

下列常量中,D 不是字符常量。

A.\007 B. a C. \n D. x

类的析构函数是D 时被自动调用的。

A.创建类 B.创建对象

C.引用对象 D.释放对象

在C++语言中,下列变量名正确的是D 。

A.char89_name; B.boolis-loan;

C.intclass D.int_abc;

正确的for语句是B 。已知inti,a;A.for(i10)a--;

B.for(i=0,i10,i++)a--;

C.for(i=0;i10;i++,a--);

D.for(i=0;i10;a--);

下列关键字中,C不是类定义中使用的关键字。

A.class B.public

C.switch D.protected

关于对象的描述中,A 是错误的。

对象就是C语言中的结构变量

对象是状态和操作的封装体

对象之间的信息传递是通过消息进行的

对象是某个类的实例

下列关于运算符重载的描述中,B 是正确的。

运算符重载可改变其优先级

运算符重载不改变其语法结构

运算符重载可改变其结合性

运算符重

文档评论(0)

lhmibtf + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档