实验五 继承性与派生类(2学时)
一、实验目的
1.理解派生类与基类的关系 2.理解派生类继承方式 3.掌握单继承和多继承使用方法 二、实验内容
以下实验内容可根据具体情况选做
1.编一个使用派生类的程序,设计一个包含圆和圆柱的几何尺寸的类,它用内部数据建立几何形状并显示它们的尺寸、面积和体积。 2.定义一个存折类,并派生出信用卡类,存折类可以实现开户、存款、取款和查询余额的操作,取款金额必须小于余额,信用卡类对取款操作进行修改,允许透支一定金额。模拟5个人到银行进行存折操作,其中有两个人还进行信用卡交易的过程。试编写一个完整的程序。 3.设计一个圆类和桌子类,再设计一个圆桌类,它是从前两个类派生出来的。要求输出圆桌的高度、面积、颜色等数据。
三、实验要求
在编写程序时将类的定义写成头文件(.h),类的实现写成.cpp文件,测试程序写在另一个.cpp文件,形成多文件结构。
实验完毕,提交实验报告。实验报告的内容包括实验目的、实验内容和结果分析,程序的源代码和程序的输入输出数据的情况附到实验报告中,写出程序的调试情况,并对输出结果进行分析。
6
实验六 运行时的多态性和虚函数(2学时)
一、实验目的
1.深刻理解滞后联编和早期联编的概念
2.掌握虚函数的定义方法及其在实现多态性的作用 3.理解纯虚函数和抽象类的使用意义 二、实验内容
多态性在学校人员信息管理系统中应用。 系统描述:
学校人员信息管理系统的主要功能是对在校人员的信息资料进行管理。在校人员包括学生、教师和行政人员。各系将学生的基本资料如姓名、性别、年龄等及课程成绩输入到系统。教师除了具有学生一样的基本资料(姓名、性别、出生年月)外,还需要记录一些与教学工作相关的信息,如所教课程、所属系部、当前职称等,并希望能够计算每个教师课时工作量。同样行政人员除了具有学生一样的基本资料(姓名、性别、出生年月)外,还有职务,业绩评级等。系统能够随时输入、显示和查询各类人员的相关信息。 三、实验要求
要求掌握面向对象程序设计方法,继承、多态、虚函数和抽象类的概念在程序中的应用。具体按以下方法完成该实验: (1)进行系统分析
在分析过程中首先理解什么是多态性、消息。考虑系统中何处使用多态性技术 (2)类设计
写出类的层次关系,定义抽象类及它的派生类,
写出各个类的数据成员及相应的数据类型,数据的存储方式,成员函数的声明 (3)类的实现
编写类的成员函数实现代码。 (4)测试多态性在系统中作用
编写一个测试程序,编译、调试,最后输出结果。
7
在编写程序时将类的定义写成头文件(.h),类的实现写成.cpp文件,测试程序写在另一个.cpp文件,形成多文件结构。
实验完毕,提交实验报告。实验报告的内容包括实验目的、实验内容、结果分析和体会。程序的源代码和程序的输入输出数据的情况附到实验报告中,写出程序的调试情况,并对输出结果进行分析。
实验七 泛型程序设计和模板(2学时)
一、实验目的
1.理解函数模板与类模板的意义和作用
2.掌握函数模板与类模板的定义方法及在程序中的运用 二、实验内容
以下实验内容可根据具体情况选做
1.用函数模板方式设计可以对某种数据类型的数组中的数据进行从小到大排序,然后用整型数据和字符型数据进行验证。 2.设计一个类模板 template
8
三、实验要求
实验完毕,提交实验报告。实验报告的内容包括实验目的、实验内容和结果分析,程序的源代码和程序的输入输出数据的情况附到实验报告中,写出程序的调试情况,并对输出结果进行分析。
实验八 输入/输出流(2学时)
一、实验目的
1.掌握I/O流的基本使用 2.掌握I/O流的格式控制
3.掌握文件的打开、关闭、读写操作 二、实验内容
以下实验内容可根据具体情况选做
1.编写一个程序能实现复数的输入/输出与复数的加减运算,要求先输入两组复数,然后对两复数分别进行加减运算,并输出原来两组复数及运算后复数的值。
2.编写程序,从键盘输入一个字符串,判断字符串的长度,然后以字符串的长度的两倍作为域宽打印出该字符。
3.编一个程序拷贝文本文件,在拷贝文件过程中,将所有小写改成大写。 4.编写程序,实现两个文本文件的内容连接成一个文件。
三、实验要求
实验完毕,提交实验报告。实验报告的内容包括实验目的、实验内容和结果分析,程序的源代码和程序的输入输出数据的情况附到实验报告中,写出程序的调试情况,并对输出结果进行分析。
9