高校人事管理系统
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
课程设计报告
课程:面向对象程序设计班级: 14计11班
姓名:**
学号: ********* 教师:***
江苏师范大学
计算机科学与技术学院
课程设计名称:高校人事管理系统
1.设计内容:
某高校主要人员有:在职人员(行政人员、教师、一般员工)、退休人员、返聘人员和临时工。现在,需要存储这些人员的人事档案信息:编号、姓名、性别、年龄、职务、职称、政治面貌、最高学历、任职时间、来院时间。
1)、添加删除功能:能根据学院人事的变动情况,添加删除记录;
2)、查询功能:能根据编号和姓名进行查询;
3)、编辑功能:根据查询对相应的记录进行修改,并存储;
4)、统计功能:能根据多种参数进行人员的统计(在职人数、党员人数、女工人数、高学历高职称人数);
5)、保存功能:能对输入的数据进行相应的存储,要求重载插入和提取符以完成数据的保存和打开。
6)、人员编号在生成人员信息时同时生成,每输入一个人员信息编号顺序加1。
2.设计目的与要求:
2.1设计目的
1、达到熟练掌握C++语言的基本知识和技能;
2、基本掌握面向对象程序设计的基本思路和方法;
3、能够利用所学的基本知识和技能,解决简单的面向对象程序设计问题。
2.2设计要求
1、要求利用面向对象的方法以及C++的编程思想来完成系统的设计;
2、要求在设计的过程中,建立清晰的类层次;
3、在系统的设计中,至少要用到面向对象的一种机制。
3.系统分析与设计
3.1 关键技术
1、文件的使用:主要利用了写文件,读文件将人事信息存入文件中;用追加方
法把新增的人事信息存入文件中;用清空文件(ios::trunc),读文件(ios::in),写文件(ios::out||ios::app)对人事信息进行删除和修改等。
2、类的设计:类:class personnelArchiveInfo;数据成员:职工的编号、姓名、
性别、年龄、职务、政治面貌、最高学历、任职时间、来校时间。
3、函数的设计:函数desplaymenu(菜单函数)、insert_per(输入人事信息)
save_per(将人事信息保存到文件) 、read_per(读文件)、save_add(保存添加的信息)、add_per(添加新的人事信息)、del_per(用编号查找人事信息并删除)、search_No(用编号查询人事信息)、search_name(用姓名查询人事信息)、revise_per(用编号查找人事信息并修改)、save_revise(保存修改后的信息)、sortarray_age(用年龄将人事信息排序)、sum_sex(统计女工人数)。
3.2基本功能要求
(1)功能选择可以用菜单来实现
例如:
1、输入人事信息
2、添加新的人事信息
3、用编号查找人事信息并删除
4、用编号查询人事信息
5、用姓名查询人事信息
6、用编号查找人事信息并修改
7、用年龄将人事信息排序
8、计算女工人数 0、退出
用户通过输入不同的数字进入不同的菜单,在对其进行相应的操作。
4.系统总体设计(确定程序功能模块)
本程序的功能结构如1所示:
图1程序功能结构图
1、输入人事信息
保存信息
人事管理系统
2、 添 加 新 的 人 事 信 息
3、 删 除 人 事 信 息
4、 用 编 号 查 询 信 息
5、 用 姓 名 查 询 信息
6、 修 改 人 事 信 息
7、 根 据 年 龄 大小排 序
0、 退出 程 序
8、 统 计 女 工 人 数
5、源程序代码
#include
#include
#include
using namespace std;
#define n 3 //要保存在文件中的人事信息数
class personnelArchiveInfo //类
{public:
void desplaymenu(); //菜单函数
void insert_per(); //输入人事信息
void save_per(); //将人事信息保存到文件
void read_per(); //读文件
void save_add(); //保存添加的信息
void add_per(); //添加新的人事信息
void del_per(); //用编号查找人事信息并删除void search_No(); //用编号查询人事信息
void search_name(); //用姓名查询人事信息
void revise_per(); //用编号查找人事信息并修改void save_revise(); //保存修改后的信息
void sortarray_age(); //用年龄将人事信息排序
void sum_sex(); //统计女工人数
char No[10]; //编号
char Name[10]; //姓名
char sex[10]; //性别
int age; //年龄
char job[10]; //职务
char politic[10]; //政治面貌
char edu_level[10]; //最高学历
char period[10]; //任职时间
char start_time[10]; //来院时间
}p[n],b;
//函数的声明
void desplaymenu(); //菜单函数
void insert_per(); //输入人事信息
void save_per(); //将人事信息保存到文件
void read_per(); //读文件
void save_add(); //保存添加的信息
void add_per(); //添加新的人事信息
void del_per(); //用编号查找人事信息并删除void search_No(); //用编号查询人事信息
void search_name(); //用姓名查询人事信息
void revise_per(); //用编号查找人事信息并修改void save_revise(); //保存修改后的信息