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

c++实验指导书 2011级(2)

来源:网络收集 时间:2020-04-17 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

实验5 单继承(2学时)

一、实验目的

1.掌握派生的类别与方式;

2.了解派生类中如何使用基类的成员、基类成员在派生类中的访问控制; 3. 掌握继承中构造函数和析构函数的调用过程。 二、实验内容及步骤

1. 给出一个Document类,从Document派生出Book类,增加PageCount变量。在

主函数中进行测试,创建Book类对象并进行初始化,输出书名和页数。

2. 设计一个单基继承的类层次程序,利用Person类派生出Student类,增加属性xh

(学号),Person类中至少有姓名、年龄等数据成员,成员函数中构造函数对其初始化,析构函数释放相应存储单元,输出函数输出其数据成员的值,其它成员函数根据需要添加,在主函数中进行测试。

3. 设计一个人员类person和一个日期类date,由人员类派生出学生类student和教师

类professor,学生类和教师类的数据成员birthday为日期类。在主函数中进行测试。

选做题 【场景】

? 假设你是一家银行的开发人员,要求为帐户的类型定义对象,这些帐户是: ? 活期帐户(Checking accout) ? 储蓄存款帐户(Savings account)

活期帐户具有以下特征

? 帐户持有者的名字只能在创建帐户时指定

? 初始余额(opening balance)必须在帐户创建时指定

? 帐户创建时必须分配账户id号。活期帐户的账户id号范围是从100000到499999,每

个活期帐户必须具有唯一的帐户id号。本实验不要求检查帐户号的上限。

活期帐户持有者能够: ? 定购支票簿 ? 检查帐户余额 ? 往帐户中加钱

? 如果活期帐户里的资金充足,可以从中取钱

储蓄存款帐户具有以下特征

? 帐户持有者的名字只能在创建帐户时指定 ? 初始余额必须在帐户创建时指定

? 储蓄存款帐户的账户id号范围是从500000到999999。本实验不要求检查帐户号的上限。 ? 帐户可以赚取利息。利息取决于帐户余额,如果余额大于1000,利息率是6%,否则是

3%。

储蓄存款帐户持有者能够: ? 检查帐户余额 ? 往帐户中加钱

? 如果活期帐户里的资金充足,可以从中取钱

实验6 多继承(2学时)

一、实验目的

1.掌握多基继承的使用,访问方法; 2.理解类层次中访问规则; 3.掌握虚基类的定义及使用。 二、实验内容及步骤

1. 定义一个学生类Student和教师类Teacher,学生类有姓名、学号、私有数据成员,

教师类有姓名、工作证号、职称、课程、周学时数。再定义一个助教类TA,继承学生类和教师类,该类可以使用学生类的全部数据成员,以及教师类的课程和周学时数的数据成员。要求:每个类提供自定义的构造函数和析构函数,并通过同名函数ShowInfo来显示全部数据成员的值。

2. 设计一个虚基类Person,包含姓名和年龄私有数据成员以及相关的成员函数;由

它派生出领导类Leader,包含职务和部门私有数据成员以及相关的成员函数;再由Person派生出工程师类Engineer,包含职务和专业私有数据成员以及相关的成员函数;再由Leader和Engineer类派生出主任工程师类Chairman。并采用相关数据进行测试。

实验7 多态与虚函数(2学时)

一、实验目的

1.理解多态的概念

2.掌握如何用虚函数实现运行时多态 3.掌握如何利用抽象类 二、实验内容及步骤

1. 设计一个图形类(Shape),由它派生出三角形类(Triangle)、正方形类(Square)、

圆形类(Circle),利用虚函数计算图形面积,并在主函数中进行测试。

2. 定义一个教师类,由教师类派生出讲师、副教授、教授类。教师的工资分别由基

本工资、课时费和津贴构成。假设讲师、副教授、教授的基本工资分别为800、900、1000元,课时费分别为每小时40、45、50元,津贴分别为1300、1800、2300。定义虚函数来计算教师的工资,并通过主函数来进行验证。

实验8 运算符重载(2学时)

一、实验目的

掌握C++中运算符重载的机制和运算符重载的方式; 二、实验内容及步骤

1. 编写一个简单复数类Scomplex,要求用友元函数重载“+”、“-”运算符,用成员函

数重载“=”运算符,使之能够实现整数或浮点数和复数的加法和减法,并且进行测试。

2. 空间一点p的坐标为(x,y,z),其中x,y,z为整数。编写点类Point3D,定义空间两点

之间的加”+”,减”-”运算为相应三个坐标值分别进行加、减运算,要求实现空间两点之间的加”+”减”-”赋值”=”运算,空间两点间的比较”= =”运算。要求编写Point3D类的声明定义和测试程序。

3. 设计一个时间类Time,包括时、分、秒等私有数据成员。重载“+”和“-”运算符以

实现时间的加法和减法运算,并进行测试。

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库c++实验指导书 2011级(2)在线全文阅读。

c++实验指导书 2011级(2).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/zonghe/979891.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: