1、 实验报告 课课 程程 C+C+面向对象程序设计面向对象程序设计 学学 院院 通信与信息工程学院通信与信息工程学院 专业及班级专业及班级 _ 通信工程通信工程 11021102 实验一实验一:数据分析程序数据分析程序 基本要求基本要求 编写一个程序,从数据文件中读取数据,并计算数据的统计特性,如均值和 标准差。在显示器上输出数据的总数、均值和标准差。具体说明如下: 1. 数据文件名作为程序参数输入。 2. 数据文件中数据的个数预先未知,应从文件中得到。数据文件的格式可自定 义。 3. 程序的各功能应由不同的函数完成。 程序说明:程序说明: 1)1) 功能实现:将用户所输入的数据存入用户指定文件
2、当中,并从文件中读取数据,并计算出功能实现:将用户所输入的数据存入用户指定文件当中,并从文件中读取数据,并计算出 数据总数,平均值和标准差。数据总数,平均值和标准差。 2)2) 程序结构:程序结构: 4 4):):程序运行结果:程序运行结果: 输入文件名:输入文件名: 输入数据输入数据: 结果显示:结果显示: 调用 调用 调用 读取 存 入 用户输入 文件 平均值函 计算数据个数 标准差函计数函数 计算平均计算标准结束 实验二:实验二:形状表示程序形状表示程序 基本要求基本要求 定义三角形(Triangle)、矩形(Rectangle)和圆形(Circle)三个形状类。编 写一个程序,能够根据
3、用户输入生成相应的形状类对象。将形状的信息输出到显 示器和文件中。具体说明如下: 1. 三个形状类应包含构造函数和成员函数(函数的参数和返回值根据需要自己 定义): 2. Set()设置形状 3. Display()显示形状, 4. 格式为 Rectangle(left, right, width, height), 5. Circle(x, y), r), 6. Triangle(x1, y1), (x2, y2), (x3, y3) 7. GetArea()计算形状的面积 8. GetPerimeter计算形状的周长 9. 用户根据提示选择要生成的形状类型,并设置形状的位置。 程序说明程序
4、说明: 1)1) 功能说明功能说明及输入输出说明及输入输出说明: 根据用户选择,调用相应的形状类对象,然后由用户输入相应数据根据用户选择,调用相应的形状类对象,然后由用户输入相应数据 后,显示图形位置,面积和周长。后,显示图形位置,面积和周长。 2)2) 程序框架程序框架: 3 3):):程序运行结果:程序运行结果: 先选先选三角形三角形: 输入输入第一个第一个点坐标点坐标: 输入输入第二个点坐标:第二个点坐标: 选择调用 组合 组合 组合 矩形类 三角形 点类 点类 用户输入数据 成员函数 Set() 用户输入 选结束 三角形类 点类 循环 成员函数 Display() 成员函数 GetAr
5、ea() 成员函数 GetPerimeter() 输入第三个点坐标输入第三个点坐标: 结果显示结果显示: 继续回到主菜单:继续回到主菜单: 选择矩形选择矩形: 输入一个顶点的坐输入一个顶点的坐标:标: 输入长和宽:输入长和宽: 结果显示:结果显示: 选择圆形:选择圆形: 输入圆心:输入圆心: 输入半径输入半径: 结果显示结果显示: 选择退出:选择退出: 实验三:形状集合程序实验三:形状集合程序 基本要求基本要求 在实验二的基础上,定义形状类的基类(Shape),三个具体的形状类继承自 该基类。形状基类包括虚函数 Display、GetArea 和 GetPerimeter。编写一个程 序,随机
6、生成 N 个形状类对象,将这些对象放入 Shape 指针类型的数组中。程序 能根据用户的输入,上下左右移动形状(即修改形状对象的成员变量),并在显 示器上输出移动后目标的新位置。 程序说明程序说明: 1):程序功能程序功能及输入输出及输入输出:在实验二的基础上,产生在实验二的基础上,产生 N N 个随机形状类对象,个随机形状类对象, 根据用户输入随机数,调用相应形状类对象,此外显示形状位置后,用户可根据用户输入随机数,调用相应形状类对象,此外显示形状位置后,用户可 以通过上下左右键控制图形位置以通过上下左右键控制图形位置,最后显示图形面积和周长信息。,最后显示图形面积和周长信息。 程序运行结果:程序运行结果: 2 2):):程序框架程序框架: 公用成员函数公用成员函数 公用继承公用继承 矩形 圆点类 点类 产生产生 随机函数 组合类组合类 三角形点类 抽象类 Se