- 1、本文档共9页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
开放实验_项目任务书.doc
实验项目一 小型工资管理系统的设计与实现
(计算机0801、02、05班)
实验目的
掌握单继承和多继承的概念;
基本掌握派生类中构造函数定义时继承父类构造函数的方法;
掌握对文件的操作;
理解面向对象的程序设计(OOP)方法;
数据结构规划与设计;
二、实验内容
某部门有四类人员:经理、兼职技术人员、销售经理和兼职推销员。现需要存储这些人员的姓名、编号、职位、当月薪水,计算月薪总额并显示全部信息。
三、实验仪器、设备及材料
PC机,C++程序设计语言应用环境。
四、实验原理
设计一个基类Staff,含有姓名、编号、职位、当月薪水,从它派生出经理Manager,兼职技术人员Technician、销售经理Seller和兼职推销员SellManager。四个派生类分别继承了基类相应数据,创建类的几个方法(如数据录入,数据显示,统计等方法),最后统计并显示相关数据。
Class Staff
{
Protected:
Char cName[20]; //姓名
int nPersonNo; //个人编号
size_t uGrade; //职位 建议采用枚举类型
float fAccumPay;//月薪
。。。。。
Public:
Employee();
~Employee();
Virtual void Pay()=0;
Void SetName(char*);
Char* GetName();
Int GetPersinNo();
Int GetGrade();
Float GetAccumPay();
…..
}
其他几个类在类Staff类上派生出来,具体见课本P364
要求:
采用数组类模板来保存不同派生类的对象,实现多态性的调用。
各个职员的薪水不固定。如:
经理:固定月薪为8000元;
兼职技术员:工作时间*小时工资(60元/小时);
兼职销售员:销售额*4%提成;
销售经理:底薪(5000元)+所辖部门销售额总额*0.5%;
设计一个菜单,用于选择各项功能(数据录入,数据统计,数据输出,数据备份,退出系统);
实现数据录入模块功能:输入各种数据;
实现数据统计模块功能:各销售经理的工资计算及最终按工资进行的冒泡排序;
实现数据备份模块功能:将相关数据写入文件;
五、实验步骤
理解C++思想和问题要求;
编程实现题目要求;
上机输入和调试自己所编的程序;
设计实验数据并运行程序、记录运行的结果;
整理出实验报告。
六、实验报告要求
阐述实验目的和实验内容;
说明程序中的数据结构及模块接口功能说明;
提交实验程序的源码及文档;
记录最终测试数据和测试结果。
七、实验附加以及思考
实验项目二 学生成绩管理系统的设计(计算机0803、04、06班)
实验目的
掌握面向对象的程序设计(OOP)方法;
掌握运算符的重载;
掌握文件的存储与读取操作;
掌握数据结构中链表的操作。
二、实验内容
设计一个菜单,通过菜单选择实现相应的操作,对于输入的原始信息,使用链表进行存储。设计一个“学生”类及用来存取文件的save()和load()函数,使用函数及运算符重载技术完成。
三、实验仪器、设备及材料
PC机,C++程序设计语言应用环境。
四、实验要求
10个学生,每个学生有“英语”和“计算机”两门功课,从键盘输入学生的学号、姓名及成绩,计算每个学生的平均成绩,将数据存入文件stud.dat中并验证是否正确地存入文件。
要求对运算符“”和“”进行重载。
把学生姓名和平均成绩抽取出来,建立一个简明文件stud_mean.dat,并验证是否正确地存入。
从文件stud.dat中输出大于等于平均成绩的学生信息。
将两门功课成绩都不及格的学生信息从文件中删除并另外存入文件bad.dat中。
编写能检索文件中某个学生信息的子程序(例如,根据学生的学号,将学生的所有信息显示出来)。
五、实验步骤
理解C++思想和问题要求;
编程实现题目要求;
上机输入和调试自己所编的程序;
设计实验数据并运行程序、记录运行的结果;
整理出实验报告。
六、实验报告要求
阐述实验目的和实验内容;
说明程序中的数据结构及模块接口功能说明;
提交实验程序的源码及文档;
记录最终测试数据和测试结果。
七、实验附加以及思考
实验项目三 简单矢量运算的编程实现(软件0801-03班)
实验目的
掌握面向对象的程序设计(OOP)方法;
基本掌握数据结构规划与设计;
掌握重载操作符;
理解泛型编程;
掌握Vector等的使用方法;
二、实验内容
运用OOP方法定义矢量类,编程实现矢量对象的求模、反转、加、减、点积、叉积、求单位矢量、输出、输入等运算。
三、实验仪器、设备及材料
PC机,C++程序
文档评论(0)