职工档案管理系统c++设计

合集下载
相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

中南大学《高级程序设计实践(C++)》

课程设计报告

设计题目职工档案管理系统

指导老师

设计者

专业班级

设计日期

目录

一、本次课题的基本内容和要求

二、软件设计整体规划及方案

三、程序功能简介

四、主体内容:

1、设计分析与程序结构

2、相关模块源程序功能及程序说明

3、操作方法(流程)

4、试验结果

5、设计体会

6、参考文献

一、本次课题的基本内容和要求

1、基本要求:为方便管理某单位职工档案信息,编写一个职工档案管理系统软件。系统记录必须包括职工的ID号、姓名以及性别、出生年月、职称、工资、所在单位、在岗情况等。

2、基本管理功能:

(1)添加:增加一名职工的档案信息到管理系统中。

(2)查询:可以根据职工姓名或ID号查找某人的相关信息,若找到则显示其信息。

(3)修改:在管理系统中修改一名职工的记录。

(4)保存:将所有职工档案信息保存在一个文件中(数据库文件或普通的文本文件)。

(5)读取:从文件中读取已保存了数据。

(6)删除:从管理系统中删除一条记录。

(7)恢复:能恢复被删除的记录。

(8)统计:(A)计算平均工资及总工资,(B)•统计男/女职工各占总职工的人数的百分比、统计职工平均年龄和单位在岗职工人数占

总职工人数的百分比、统计副高以上职工人数占总职工人数的

百分比。(C)以表格形式打印全部职工档案信息表。

二、软件设计整体规划及方案

1、自顶向下、逐步细化、逐步求精

所谓“自顶向下,逐步细化、逐步求精”就是在对于给定问题进行透彻的了解和详细的分析的基础上,把问题分解成若干个按顺序执行的逻辑部分,称为“模块”。每个子任务如果仍很复杂,还可以再分解为若干个子任务。如此逐层分解,对于每个模块的设计都采用这种“自顶向下、逐步细化”的方法,将它们分解成为基本结构为止,就如同写文章先拟出题目和中心内容,再确定分为几大部分,每一大部分又分哪几节,每一节分为几段,每一段包括哪几个意思,这就是“自顶向下,逐步细化”的方法。

2、菜单技术

当一个程序的规模比较庞大,层次和模块比较多时,不要每次都将所有模块按顺序执行一遍,最好在每一层,至少在最高几层都设一个“菜单”。为方便用户操作,“菜单”技术已广泛使用在计算机的系统软件中,具体做法是:程序首先把各功能说明及相应代号以菜单形式显示在屏幕上,然后由用户在键盘上输入所选的功能代号,程序自动转去调用相应的功能模块进行处理。

3、时间安排

1、阅读设计题目、任务内容,规划设计进度,并进行软件的各相关功能模块的规划设计(1天)。

2、在C++环境下,用结构化程序设计思想进行C++语言程序设计、

功能模块调试(7-9天)。

3、进行课程设计报告编写与整理(2天)。

4、课程设计结束时,进行设计成果演示;对相关电子文档进行整理上交(包括:程序文件、帮助说明文档);交课程设计报告一份。

三、程序功能简介

1、数据文件管理功能:创建新文件、打开老文件。

2、输入/添加/插入记录:能够完成对任意一条记录输入、添加或插入数据表中,并保存到数据文件中。

3、显示、查询记录:能够打开已存在的数据表文件,根据用户要求按所给记录关键字显示、查询一个或多个相关联记录的各项信息。

4、修改记录:能够打开已存在的数据表文件,并对确定的任意记录进行修改,在修改过程中,应显示记录信息,给出确认提示,并对更新的记录信息进行文件保存。

5、删除记录:能够打开已存在的数据表文件,可以删除数据表中的任一记录,要求具备逻辑删除(具有恢复功能),并对新的数据表信息进行文件保存。

6、统计功能:能够打开已存在的数据表文件,对数据表中与某关键字匹配的相关记录进行数据统计(包括:总数、平均值、分段信息)。

7、恢复记录:恢复已删除的数据并进行保存。

四、主体内容:

1、设计分析与程序结构

#include

#include

#include<>

#include<>

#include

using namespace std;

class Worker

{

public:

Worker() /*构造函数初始化*/

{num[0]='\0'; name[0]='\0';float salary=0;float

age=0;sex[0]='\0';address[0]='\0';zhicheng[0]='\0';}

char num[20];

char name[20];

float salary;

float age;

char sex[20];

char address[20];

char zhicheng[20];

};

class function

{

private:

Worker wor[100]; /*Worker类中的对象数组*/

public:

void add(char num[20],char name[20],float salary,float

age,char sex[5],char address[20],char zhicheng[20]);/*添加职

工信息*/

void del(char name[20]); /*删除*/

void search_num(char num[10]); /*按职工号查找*/

void search_name(char name[20]); /*按姓名查找*/

void modify(char name[20]); /*修改*/

void save(); /*保存*/

void read(); /*读取*/

void recover(); /*恢复*/

void statistics(); /*统计*/

void display(); /*显示*/

};

相关文档
最新文档