第8题 职工信息表 报告
课 程 设 计 报 告
课程设计名称: 从职工信息表 系 别: 3 学生姓名: 班 级: 学 号: 成 绩: 指导教师: 汤亮
开课时间:
一、课程设计目的 (宋体四号加粗)
**************************************************
二、课程设计要求 (宋体四号加粗)
**************************************************
三、课程设计内容 (宋体四号加粗)
**************************************************
四、课程设计概要设计 (宋体四号加粗)
**************************************************
五、课程设计详细设计与实现 (宋体四号加粗)
**************************************************
六、源代码与注释 (宋体四号加粗)
**************************************************
七、总结 (宋体四号加粗)
***************************************************
一、课程设计目的
根据课程讲内容,自主作相应的练习,消化自己所学的内容,同时也培养
自己综合运用c++程序设计课程所学到的知识和编写c++程序解决实际问题的能力,以及良好的课程设计习惯。
通过课程设计的训练,学生了解程序开发的过程,掌握编写、调试和测试c++语言程序的基本技巧,充分理解结构化程序设计的基本方法。
二、课程设计要求 1、基本要求:
(1)要求利用面向对象的方法以及C++的编程思想来完成系统的设计; (2)要求在设计的过程中,建立清晰的类层次;
(3)在系统设计中要分析和定义各个类,每个类中要有各自的属性和方法; (4)在系统的设计中,要求运用面向对象的机制(继承、派生及多态性)来实现系统功能。 2、创新要求:
在基本要求达到后,可进行创新设计,如根据查找结果进行修改的功能及设计出比较友好的界面等。 三、课程设计内容 职工信息表(★★) 设计要求: 使用C++类实现
设计要求实现如下功能:
(1)建立职工信息数据,包括职工编号、姓名、性别、工资、出生时间、参
加工作时间和年龄(必须计算得到)。
(2)根据职工信息表,建立只含有姓名和年龄的职工信息简表。(可选功能) (3)使用继承的方法构造3个类,(即雇员类——虚基类,教师类和工人类——派生类)使用相应的对象放置10个职工信息。 (4)编写同名display()成员函数,用来输出数组的内容。
(5)按不同类别输出职工信息,比如按系输出教师信息。(可选功能) (6)要求对“<<”和“>>”运算符进行重载。考虑到输人职工编号时,也会因不小心引人空格,而且名字中也需要有空格,所以重载“>>’’运算符时,需要满足这个要求。 (7)抽取并计算职工的平均年龄。
(8)检索(查找)指定信息。(如按姓名检索、按年龄检索) (9)显示年龄分布的柱状图,示例如下: (10)参考界面如下:
增加一位教师记录 增加一位工人记录 显示全部职工记录 计算教师平均年龄 计算工人平均年龄 删除一个教师 删除一个工人
按系输出教师信息(可选) 按姓名检索所有信息
结束程序运行 四、课程设计概要设计
这个题目根据教师、两个对象可知先设两个类,即Teacher、Work类,并由此分别建立对象数组,然后在这两个类中分别将编号、姓名、年龄、性别等数据成员和删除、添加、查找、计算平均年龄等成员函数等封装起来,将每个功能函数在类外定义,主函数中通过菜单进行选择调用各功能函数。 五、课程设计详细设计与实现
1.由于有“<<”、“>>”的重载,顾应用“#include<iostream.h>、#include<fstream.h>、#include<iomanip.h>”。
2.设计一个雇员虚基类guyuan,并派生出教师Teacher工人Works两个类,同时在这两个类里分别添加数据成员和成员函数,成员函数包括录入、添加、查询、删除、显示、主函数、<<及>>的重载函数。
3.各函数的具体实现:(由于教师类与工人类功能及数据成员几乎都相同,所以在这里只介绍一下教师类) (1)录入函数
可以创建一个txt文件。并向这个文件中输出10个教师的信息,然后再从文件中将这10个教师的信息录入到教师数组10个对象中。 (2)主菜单函数
输出主菜单界面信息,返回一个菜单选项的值。 (3)添加函数
输入要添加教师的信息并返回主菜单。 (4)删除函数
输入要删除教师的编号,根据编号定位到数组的这个同学,将此后的教师
的编号依次向前移一个。 (5)按系查询函数
输入要查询的教师的系别,然后输出该教师的信息。 (6)显示函数
用一个循环和插入重载函数,依次将对象输出。 (7)求平均年龄函数
用循环将各元素的年龄加起来,然后除以总人数。 4.主函数
通过菜单选项来调用各函数,菜单可以用swich语句实现。 六、源代码与注释
#include <iostream> #include<fstream> #include <string> #include <iomanip> using namespace std;
static int sum=0; //教师总数 static int sum1=0; //工人总数 class Guyuan {public:
char num[20]; char name[20]; int age;
}; //教师类
class Teacher:virtual public Guyuan//继承虚基类 { public:
char xi[5];
int zhucaidan();//主菜单函数 };
Teacher teacher[20];//全局对象数组
void record();//录入函数 void add();//添加函数 void chaxun();//查询函数 void del();//删除函数
float average_age();//平均年龄函数 void xichaxun();//按系查询函数 void xianshi();//显示全部教师函数 void namejiansuo();//按姓名检索函数
friend ostream& operator<<(ostream&,Teacher&);重载<< friend istream& operator>>(istream&,Teacher&);重载<<
//主菜单定义
int Teacher::zhucaidan() { }
//定义录入函数 void Teacher::record()
{ ofstream outfile("教师信息.txt",ios::out);//向文件输出
cout<<"\t\t\t----------------------------------------------------\n";
cout<<"\t\t\t+ 教师信息表管理系统 +\n";
cout<<"\t\t\t----------------------------------------------------\n"; cout<<"\t\t\t+ [1]----计算教师平均年龄 +\n"; cout<<"\t\t\t+ [2]----查询教师信息 +\n"; cout<<"\t\t\t+ [3]----按系查询教师信息 +\n"; cout<<"\t\t\t+ [4]----按名字检索教师信息 +\n"; cout<<"\t\t\t+ [5]----显示教师全部信息 +\n"; cout<<"\t\t\t+ [6]----删除教师信息 +\n"; cout<<"\t\t\t+ [7]----添加教师信息 +\n"; cout<<"\t\t\t+ [0]----退出系统 +\ …… 此处隐藏:2696字,全部文档内容请下载后查看。喜欢就下载吧 ……
相关推荐:
- [高等教育]一年级家长课程教案
- [高等教育]封丘县人民医院深入推进纠正医药购销领
- [高等教育]2017年6月大学英语四级真题试卷及答案(
- [高等教育]2017年北京第二外国语学院文学院824中
- [高等教育]7 高中历史第7单元1861年俄国农奴制改
- [高等教育]【K12学习】4、实际测量-苏教版六年级
- [高等教育]药具培训试卷题库及部分参考答案
- [高等教育]本土电子元器件目录分销商如何赢得生意
- [高等教育]七年级岭南版美术教案
- [高等教育]书作文之书法活动通讯稿
- [高等教育]Endnote X 软件使用入门和用法总结(LS)
- [高等教育]嵌入式系统的现状及发展状况
- [高等教育]2012抗菌药物专项整治活动方案解读
- [高等教育]人教版新课本一年级数学下册期末试卷
- [高等教育]爱课程民法学观后感
- [高等教育]930机组使用说明书1
- [高等教育]煤气设备设施点检标准
- [高等教育]常见室内观叶植物图解
- [高等教育]312党员群众路线心得体会
- [高等教育]小学信息(苗版)第一册全册教案
- 在市---局2010党建大会上的讲话
- 《科哲》提纲及补充阅读材料(2010.7)
- 苏州高博软件技术职业学院论文开题报告
- 兼职导游管理的困境及对策探讨
- 基于通用设计理念的现代厨房产品语义研
- 康乐一中2010年至2011年度鼓号队、花束
- 第10章_数据收集整理与描述_期末复习课
- 2008年黑龙江林甸商贸购物中心营销策划
- 水硬度的测定实验报告
- 五分钟教你拍摄夜景光绘照
- 2014年临床妇产科三基三严试题及答案
- 0第二课 纾解压力第一站了解压力
- 解析建筑工程电气设备安装施工技术要点
- 地方性应用型本科高校“双师型”师资队
- 高考语文专题复习课件:小说阅读指导
- 装饰工程投标书2
- 大学生就业难问题探讨及对策
- English and Its History
- 青岛市城市房屋修缮工程质量监督管理办
- 初中英语形容词和副词的用法和练习题




