搜档网
当前位置:搜档网 › 人事管理系统C++课程设计分析报告

人事管理系统C++课程设计分析报告

人事管理系统C++课程设计分析报告
人事管理系统C++课程设计分析报告

人事管理系统C++课程设计报告

————————————————————————————————作者:————————————————————————————————日期:

编号:B04931053

学号:201240450137

教学院计算机学院

课程名称面向对象程序设计课程设计

题目人事档案管理系统

专业软件工程

班级12软件工程

姓名包先跃

同组人员吕鹏飞、林科辰、龙浪、陈精良

指导教师谢晋

2013 年12 月15 日

(完成时间)

目录

一概述 (2)

二总体方案设计 (3)

三详细设计 (3)

程序流程图 (7)

四程序的调试与运行结果说明 (9)

4.1调试方法 (9)

4.2运行的主要功能界面及分析 (9)

4.3测试中的问题 (13)

五课程设计总结 (14)

5.1程序的效果描述 (14)

5.2优点与不足 (14)

5.3个人体会 (14)

参考文献 (15)

附录: (15)

一概述

1.课程设计的目的

1.理解和掌握该课程中的有关基本概念,程序设计思想和方法。

2.培养综合运用所学知识独立完成课题的能力。

3.培养勇于探索、严谨推理、实事求是、有错必改,用实践来检验理论,全方位考虑问题等科学技术人员应具有的素质。

4.掌握从资料文献、科学实验中获得知识的能力,提高学生从别人经验中找到解决问题的新途径的悟性,初步培养工程意识和创新能力。

2.课程设计的要求

1.需求分析:

①能够输入职工的综合情况的输入、修改以及删除;

②能够实现对职工信息的浏览;

③能够实现对职工进行查询;

④设计系统封面并由计时器控制;

2.系统性能要求:

①系统安全、可靠;

②功能齐全;

③操作方便、界面友好;

④易于维护和扩充。

3.系统的功能分析: 资料维护:系统维护包括对各种表记录的修改、删除、添加等操作。

4.资料维护:对数据表中的信息进行浏览。

系统查询:可以按职工编号、姓名等相关信息进行详细或模糊查询。

报表统计:包括统计职工编号、职工姓名、职工性别、所在部门、职工年龄、工作日期、基本工资、职称、职务和简历等字段。

其它操作:系统封面、计时器控制与人性化提示信息。

系统功能模块

人事管理系统有:数据查找与浏览、数据修改、报表显示和系统封面构成。

5.功能的实现:

1“数据查找与浏览”模块:

(1)数据查找:

对职工的编号、职工姓名、职工性别、所在部门、职工年龄、工作日期、

基本工资、职称、职务和简历等字段进行精确或模糊查找。

(2)数据浏览:可以对数据表中的数据实现,上一项、下一项、首相、尾项等操作。

(3)其他信息:设置字体、颜色属性和一些提示信息。

2“数据修改”模块:

(1)添加数据:增加一个新的记录

(2)修改数据:修改原有记录。

二总体方案设计

整体设计为数据输入模块、数据添加模块、数据删除模块、数据查询模块、数据修改模块、数据统计模块、数据排序模块。

数据输入模块把员工信息逐一写入人事档案文件。数据添加模块用追加的方式把新增员工信息写入人事档案文件。数据删除模块根据人员编号查找要删除的人员,从文件中读一条记录,查看编号是否要删除,如果是,则舍弃。数据查询模块把编号和姓名作为查询字段,用基本查找算法查找人事档案文件,把符合查找要求的记录输出。数据输出模块通过菜单选择年龄或者来时时间,把数据从文件中读出来,任意选择一种排序算法对记录进行排序,输出排序结果。这些模块中我负责数据查询和删除两个部分。

三详细设计

数据结构采用成员类:

class person //定义通讯成员类

{

public:

char num[20];//编号

char name[30];//姓名

char sex[20];//性别

char age[20];//年龄

char position[20];//职位

char address[500];//地址

char tel[100];//手机号

char nation[30];//民族

char political_status[20];//政治面貌

char marital_status[20];//婚姻状况

char school[200];//毕业院校

char identity[500];//身份证号

char email[20];//邮箱

P ublic: //对其成员函数的声明

void add_person(int&); //新增通讯成员

bool searchnum(); //按编号查找

bool searchname(); //按姓名查找

void delnum(int&); //按编号删除

void delname(int&); //按姓名删除

void showall(); //统计职员数

void get_i(); //读取数据文件职员数

friend ostream &operator<<(ostream& out,person& pe);//重载运算符"<<"

};

数据输入模块

把员工信息逐一写入人事档案文件。

数据添加模块

用追加的方式把新增员工信息写入人事档案文件。

cout<<"请输入职员的的编号:(1000-9999)"<

cin>>num;

cout<<"请输入职员姓名:"<

cin>>name;

cout<<"请输入性别:"<

cin>>sex;

while((string)sex!="男"&&(string)sex!="女")

{

cout<<"您输入的性别有误,请核对后再输入:"<

cin>>sex;

}

cout<<"请输入年龄:"<

cin>>age;

cout<<"请输入该职员的职位:(经理,管理员,员工)"<>position;

while((string)position!="经理"&&(string)position!="管理员"&&(string)position!="员工")

{

cout<<"您输入的职工职位有误,请核对后再输入:"<>position;

}

cout<<"请输入该职员的家庭地址:"<

cin>>address;

cout<<"请输入该职员的民族:"<

cin>>nation;

cout<<"请输入职员的政治面貌:(群众,团员,党员)"<

cin>>political_status;

while((string)political_status!="群众"&&(string)political_status!="团员"&&(string)political_status!="党员")

{

cout<<"您输入的职工政治面貌有误,请核对后再输入:"<

cin>>political_status;

}

cout<<"请输入职员的婚姻状况(未婚,已婚)"<

cin>>marital_status;

while((string)marital_status!="未婚"&&(string)marital_status!="已婚")

{

cout<<"您输入的职工的婚姻状况有误,请核对后再输入:"<

cin>>marital_status;

}

cout<<"请输入职员的毕业学校:"<

cin>>school;

cout<<"请输入职员的身份证号:"<

cin>>identity;

cout<<"请输入职员的手机号:"<

cin>>tel;

cout<<"请输入职员的邮箱:"<

cin>>email;

cout<<"请输入职员的聘用时间:"<

cin>>engage_time;

cout<<"请输入此次记录的添加时间:"<

cin>>add_time;

cout<

ofstream outfile("test.dat",ios::app|ios::binary);//打开"test.dat"文件,并将指针指向文件尾

(3)数据删除模块

根据人员编号查找要删除的人员,从文件中读一条记录,查看编号是否要删除,如果是,则舍弃

如:"test.dat"

{

ofstream outfile("test.dat",ios::binary);//打开用于写的二进制文件"test.dat"

ifstream infile("tmp.dat",ios::binary);//打开用于读的二进制文件"tmp.dat"

infile.read((char*)(this),sizeof(*this));//读取一个类对象数据放入*this中

while(!infile.eof())

{

outfile.write((char*)(this),sizeof(*this));//将从"tmp.dat"中读取的数据写入" test.dat"中

infile.read((char*)(this),sizeof(*this));//再从"tmp.dat"中读取一个类对象数据放入*this中

}

不再写入文件;否则重新写入文件。

(4)数据查询模块

把编号和姓名作为查询字段,用基本查找算法查找人事档案文件,把符合查找要求的记录输出。

(5)数据修改模块

查找要修改的记录,修改之。先读记录,若是要修改的记录,则修改信息,把修改后的信息写入文件;否则直接写入文件。例如按姓名修改:if(delmark==1)//若找到了删除对象,就用"tmp.dta"文件内容去充当

(6)数据输出模块

通过菜单选择年龄或者来时时间,把数据从文件中读出来,任意选择一种排序算法对记录进行排序,输出排序结果。

if(i==0)//人事管理系统中无此职员,请先增加职员信息信息

cout<<"人事管理系统数据为空,请先增加职员信息!"<

else

{

ifstream infile("test.dat",ios::binary);//打开用于读的binary文件

infile.read((char*)(this),sizeof(*this));//读取一个类对象数据放入*this中

cout<<"所有职员的信息如下:"<

while(!infile.eof())//沿未到达文件尾,继续处理

{

cout<<(*this);//输出当前对象的各数据成员

程序流程图

人事管理系统

1、添加人事信息

4.1具体函数

per.get_i();

menu();

password();

per.add_person();//调用增加人事档案中职员信息函数

per.searchname();//调用按姓名查找职工信息函数

per.searchnum();//调用按编号查找职工信息函数

per.delname();//调用按姓名删除职工信息函数

per.delnum();//调用按编号删除职工信息函数

per.showall();//调用显示人事档案管理系统中所有职员信息的函数delall();//调用清空人事档案管理系统中所有数据的函数

total();//调用输出人事档案管理系统中职员数的函数0、退出人事档案管

3、按编号查找人事

4、

5、

6、

7、

8、

2、按姓名查找人事

四程序的调试与运行结果说明

4.1调试方法

将已经编好的程序放在VC++6.0的环境中进行调试与测试,发现程序中的错误,在提示的情况下进行改正。

4.2运行的主要功能界面及分析

(1)、菜单界面

图2-1菜单

(2)、输入信息界面

图2-2 信息输入(3)、按姓名查找信息界面

图2-3 姓名查找(4)、编号查找信息界面

图2-4 编号查找信息

(5)、按姓名删除信息界面

2-5 按姓名删除信息

(6)、按编号删除信息界面

2-6按编号删除信息

(7)、显示人事档案管理系统中所有职员信息界面

图2-7(由于前面两步将系统中唯有的2租数据删除了需哦亿显示员工信息需重新添加新的员工信息

(8)统计人事管理系统中职员人数

图2-8

(9)、清空人事管理系统中的数据

图2-9

(10)、退出界面

图2-10 退出程序

(11)、程序运行分析

测试是将在屏幕上出来有关人事档案需要填写的东西,输入需要填写的信息,然后逐步操作添加信息,删除信息,查询信息,修改信息等操作来实现程序的功能。

4.3测试中的问题

注意声明函数时,各函数之间的调用关系。

五课程设计总结

5.1程序的效果描述

该程序主要实现人事管理的功能。利用14个函数的组合组成程序,然后通过该程序输入人事信息,然后利用各个函数的调用,实现信息输入,信息添加,信息查询,信息删除,信息修改等功能。

5.2优点与不足

优点:使用结构使程序的输入输出更简洁

使用函数可以使程序更简便;

不足:输入的内容比较多;

用文件储存信息不能用结构输入;

读取文件中的信息也不能用结构读取;

程序比较大,各部分之间的关系繁琐;

5.3个人体会

学习C++要切忌浮躁,要明白欲速则不达。如果想要学好C++就要多看多写,而最关键的是要上课听老师分析。

通过一个学期的学习,我更了解计算机编程了,同时也更喜欢计算机了。并且我也知道了如何学好C++,学C++靠的不是上课的那点儿时间,而是课前的预习工作及课后的复习工作,还有对写程序的及时练习,练习写程序不仅是对知识的复习也是对知识的熟练从而也能更深刻的理解程序,理解C++。我们学习C++不仅要看课本,更重要的是看学习资料,从而使掌握的知识更广阔。只有拥有丰富的知识以及掌握对编程的熟练度,才能对程序灵活书写。

C++是比C语言更高级的一门语言,我们也可以通过学习C语言来学习C++,这样就可以减少学习中遇到的困难。想要学好C++,让我们一起努力吧。

参考文献

【1】谭浩强,C程序设计题解与上机指导(第二版),北京,清华大学出版社,2000年9月。

【2】《C++程序设计语言(特别版)》,机械工业出版社。

【3】袁志祥、秦锋主编,《数据结构(c语言版)例题详解与课程设计指导》第二版中国科学技术大学出版社出版

附录:

/*人事档案管理系统*/

#include

#include

#include

using namespace std;

class person //定义通讯成员类

{

public:

char num[20];//编号

char name[30];//姓名

char sex[20];//性别

char age[20];//年龄

char position[20];//职位

char address[500];//地址

char tel[100];//手机号

char nation[30];//民族

char political_status[20];//政治面貌

char marital_status[20];//婚姻状况

char school[200];//毕业院校

char identity[500];//身份证号

char email[20];//邮箱

char engage_time[100];//聘用时间

char add_time[100];//记录时间

public: //对其成员函数的声明

void add_person(int&); //新增通讯成员

bool searchnum(); //按编号查找

bool searchname(); //按姓名查找

void delnum(int&); //按编号删除

void delname(int&); //按姓名删除

void showall(); //统计职员数

void get_i(); //读取数据文件职员数

friend ostream &operator<<(ostream& out,person& pe);//重载运算符"<<"

};

ostream &operator<<(ostream& out,person& pe)//定义重载运算符"<<",从而直接输出类对象

{

out<<"编号:"<

out<<"姓名:"<

out<<"性别:"<

out<<"年龄:"<

out<<"职位:"<

out<<"手机号:"<

out<<"民族:"<

out<<"政治面貌: "<

out<<"婚姻状况:"<

out<<"毕业院校:"<

out<<"身份证号:"<

out<<"邮箱:"<

out<<"聘用时间: "<

out<<"记录时间:"<

return out;

}

int i=0; //定义全局变量,用于记录人事档案管理系统中的职员数

void person::get_i()

{

ifstream file("test.dat",ios::binary|ios::in);//打开用于读的binary文件

if(!file)

{

ofstream outfile("test.dat",ios::app|ios::binary);//打开"test.dat"文件,并将指针指向文件尾

if(!outfile)

{

cerr<<"test.dat 文件打开错误!"<

return;

}

return;

}

file.read((char*)(this),sizeof(*this));//读取一个类对象数据放入*this中

while(!file.eof())

{

i++;//每调用一次该函数,职员总数增加1

file.read((char*)(this),sizeof(*this));//再读取一个类对象数据放入*this中}

file.close();

}

void person::add_person(int& i)//增加人事档案中职员信息函数

{

string choice="Y";

while(choice=="Y"||choice=="y")

{

cout<<"-----新建人事档案职员信息-----"<

cout<<"请输入职员的的编号:(1000-9999)"<

cin>>num;

cout<<"请输入职员姓名:"<

cin>>name;

cout<<"请输入性别:"<

cin>>sex;

while((string)sex!="男"&&(string)sex!="女")

{

cout<<"您输入的性别有误,请核对后再输入:"<

cin>>sex;

}

cout<<"请输入年龄:"<

cin>>age;

cout<<"请输入该职员的职位:(经理,管理员,员工)"<

cin>>position;

while((string)position!="经理"&&(string)position!="管理员"&&(string)position!="员工")

人事管理系统软件工程实训报告

人事管理系统软件工程实训报告 1、系统描述及数据流图 系统介绍 人力资源管理系统是这样的一种管理软件,它能够快速、方便地显示结果,还可以对有关工资的各种信息进行统计,服务于财务部门及公司主要管理者。实施人力资源管理系统可以集中、整合各种信息,有利于降底管理成本,提高公司管理效率和水平,从而促进公司的进一步发展和变革。本系统实现了以下功能: ? 系统界面设计美观、友好; ? 智能化程度高、操作灵活、方便; ? 系统运行稳定、安全可靠; ? 反应快速、计算准确; ? 实现新员工入职登记、查询修改及入职合同的录入、; ? 登记并可以浏览日常考勤信息; ? 记录公司定期的员工考核成绩; ? 实现部门用人申请的登记; ? 实现应聘者信息备档; ? 实现工资单自动录入及缺勤原因的扣资计算。

2、思考 1、项目开发首先要做的事是什么? 首先对该项目进行可行性研究,论证该项目是否值得去解决,然后进行需求分析,了解用户对目标软件系统在工功能、行为、性能、设计约束等方面的期望。 2、你认为该软件应具备的最重要的特性是什么。 能够满足用户某方面的需求,便于使用,方便扩展。有很好的适应性,能够在不同的环境中运行。 3、你认为怎样分工是最合理的? 给任务分配取决于项目的规模、人员的专长和经验。把不同的责任分配给不同的几组人。1970年,Sackman对12名程序员用两个不同的程序进行试验,结论是:程序排错、调试时间差别为18:1;程序编制时间差别为15:1;程序长度庆功别为6:1;程序运行时间差别为13:1。理想的情况是项目经理和技术负责人由一个人或一个小组担任。树的结点是程序员小组,为了减少系统的复杂性、便于项目管理,树的结点每层不要超过7个,在此基础上尽量降低树的层数。程

人事管理系统——C语言

人事管理管理系统 [要求] 某高校主要人员有:在职人员(行政人员、教师、一般员工)、退休人员和临时工。现在,需要存储这些人员的人事档案信息:编号、姓名、性别、年龄、职务、职称、政治面貌、最高学历、任职时间、来院时间、人员类别。其中,人员编号唯一,不能重复。 (1)添加删除功能:能根据学院人事的变动情况,添加删除记录; (2)查询功能:能根据编号和姓名进行查询; (3)编辑功能(高级):根据查询对相应的记录进行修改,并存储; (4)统计功能:能根据多种参数进行人员的统计(在职人数、党员人数、女工人数、高学历高职称人数(硕士学位以上或者副教授以上)),统计要求同时显示被统计者的信息; (5)排序功能:按照年龄、来院时间进行排序; (6)保存功能:能对输入的数据进行相应的存储; 一、需求分析: 根据题目要求,职工信息是存放在文件中的,所以应该提供相应的文件的输入输出的功能,在程序中应该有添加删除,查询,编辑,统计,排序,保存等程序实现相应的操作,另外菜单式的选择方式选择程序的功能也是必须需的。另外程序中要求存储的模块,采用的方式均为将原文件中的所有数据读入内存,在内存中处理之后以覆盖的方式写入文件中重新储存,这样的方法容易理解、容易编写,但当文件中的数据量很大时,这种方法也存在一定的难度,在本程序中将N定为100,也即最多可储存的职工人数为100; 二、总体设计: 根据以上需求分析,将程序分成以下几个模块: 1、新建档案信息; 2、删除信息; 3、追加信息; 4、搜索查找信息(按姓名或者编号搜索); 5、浏览全部信息; 6、修改信息; 7、信息排序; 8、信息统计; 三、详细设计; 1、主函数: 〈1〉需求分析: 为使系统执行完每部分功能后能够方便的回到系统主界面,main()函数设计的很简单,只包含一个menu()函数,其余的全部功能都通过menu()函数调用来实现,并通过menu()函数的递归调用实现返回主界面的功能。 main()函数定义如下: main()

C语言课程设计报告-游戏2048

东华理工大学C语言课程设计报告 学院:国际教育学院学院专业:电子信息工程 班级:1420606 学号:201420060638 姓名:钟天运

一、课程设计题目:游戏2048 二、课程设计要求: a)使用C语言编写2048这款游戏 b)能够正常运行,拥有游戏界面。 c)能正常进行游戏从开始到结束。 d)用户操作方便 三、设计思路: a)游戏介绍: i.2048是一款简单的数字类游戏,界面是一个 4*4的方形格子。每个格子里可以为空或者有 一个2^n的数值。 ii.用户可以输入4种指令,分别是:上下左右,游戏会根据用户的指定的方向,将格子中 的数值向对应方向进行移动,直至移动到最边 上的格子或者有其他数值占用,如果碰到等大 数值,将会进行合并。此外,成功移动后,会 在一个空格子随机生成一个2或者4 iii.游戏目标是合成2048这个数值或者更大的数值。 b)实现思路: i.可以使用二维数组来保存4*4格子中的数值 ii.指令,可以通过输入字符函数,读取用户

在键盘上的方向键,进行判断执行对应的代 码。 iii.游戏界面,可以使用简单的特殊制表符,来实现,并通过清屏函数来进行反复同位置打 印界面。 iv.需要判断游戏结束的函数,以及记录游戏分数和步骤的变量 v.当游戏结束时,能够询问用户是否重新开始。 vi.随机生成一个新数,可以调用随机函数,使用时间做种子。 c)实现难点: i.打印游戏界面,要实现灵活能根据棋盘数组里 面的数据灵活打印。 ii.执行操作时,数值的移动和合并。

四、流程图

五、C语言源代码 // 游戏2048.c #include "windows.h" #include "time.h" #include "stdio.h" #include "conio.h" #include "string.h" //宏定义常量方向键值 //const int LEFT = 75, UP = 72, RIGHT = 77, DOWN = 80; #define LEFT 75 #define UP 72 #define RIGHT 77 #define DOWN 80 const char error_str[] = "您上次输入的指令无法识别,请重新输入。"; struct board { int place[4][4]; long int stepn; long int num; //存储游戏分数 long int time; int dtk; //direction key 记录方向键,及操作方向 int over; int zeronum; }; //该函数为游戏运行函数,当只是玩游戏的时候。进入该函数,游戏控制函数。int main() { //place数组为棋盘,其中为零代表空,-1代表不能合并的牌,其他2的倍数值为本身含义,初始化为全0。 struct board board1, board_backup; int newgame(struct board *, int), show(struct board *), operate(struct board *); char str[100] = "首次运行游戏"; //用于记录系统返回给用户的信息,例如:上一步执行向左合并,按键有误等 newgame(&board1, 0); //调用函数为新局初始化,第二个

人事管理系统-软件工程实验报告

软件工程实验报告 课题:人事管理系统学生姓名: 学号: 专业班级: 指导教师: 同组成员:

需求分析 一、实验目的 掌握软件需求的结构化分析方法。 二、实验任务与实验要求 导出系统详细的逻辑模型,这里用数据流图来表示。 三、实验内容 (1)功能分析 经过初步分析“人事管理系统”应该具备以下主要功能。 1、职员个人信息资料的增加、修改和删除; 2、职员的考勤录入和查询; 3、职员工资结算和查询; 4、人事管理人员的变化和操作授权; 由于是使用计算机管理,就带来了新的功能:用户登陆、操作人员的管理、基本数据的维护、由数据安全产生的数据备份与恢复。 (2)、关系模式 在满足函数依赖和无损连接的基础上,使数据的设计更加合理。在本系统中只有3个实体,那就是普通员工、管理员、超级管理员,他们权限的不听通过角色来区分。在整个系统中超级管理员只有一人,管理员二人。一个人只可以在普通员工、管理员、超级管理员中处于一个角色,而不可以兼任。其具体的关系模式如下: 普通员工(员工号,密码,姓名,性别,出生年月,身份证号,联系电话,就职时间) 管理员(管理员号,密码,姓名,性别,出生年月,身份证号,联系电话,就职时间) 超级管理员(超级管理员号,密码,姓名,性别,出生年月,身份证号,联系电话,就职时间) 工资(员工号,时间,基本工资,提成,奖金) 考勤(员工号,时间,迟到,早退,管理员号) 注意:“”表示主码,“”表示既是主码又是外码。 E-R图如下所示

数据字典设计: 为了方便数据库的管理和维护,本系统只设计一个数据库workers.mdb,其中包含worker(员工信息表)、manager(考勤信息表)、booklist(工资信息表) 表1-1 worker(员工信息表)各字段设计 表1-2 monit (考勤信息表)各字段设计

人事管理系统程序报告

课程设计实验报告 课题名称:人事管理系统 学院:理学院 专业:计算机 班级: 101 班 姓名:张博博李耀彩曹兆亮韩晴 学号: 1881100128 2012.5.2

目录 1 课题综述 (1) 1.1人事管理信息系统来源 (1) 1.2人事管理系统的意义 (1) 1.3预期目标 (1) 1.4面对的问题 (2) 1.5需解决的关键技术等 (2) 2 人事管理系统分析 (2) 2.1涉及的基础知识 (2) 2.2解决问题的基本思路 (11) 2.3总体方案 (11) 2.4功能模块框图 (11) 3 人事管理系统设计 (11) 3.1算法描述 (12) 3.2详细流程图 (13) 4 代码编写 (14) 5 运行与测试 (14) 总结 (18)

1 课题综述 人事管理系统是一个数据库应用系统,员工的所有信息都是保存在数据库中。本系统将主要实现以下功能:增加记录功能、修改记录功能、删除记录功能以及刷新记录功能等等。作为人事管理系统,我们将它作为一个数据库应用系统来进行开发制作。数据库应用系统开发的前提是首先开发数据库和数据库中的数据表,数据库和数据表是数据库应用系统中进行不可缺少的工具,一切的开发工作都是围绕数据库和数据表的操作进行的,数据表可被VC++的数据工程和其他工程进行引用。 1.1人事管理信息系统来源 随着计算机技术的飞速发展,计算机在企业管理中应用的普及,利用计算机实现企业人事管理势在必行。对于大中型企业来说,利用计算机支持企业高效率完成劳动人事管理的日常事务,是适应现代企业制度要求、推动企业劳动人事管理走向科学化、规范化的必要条件;计算机管理所无法比拟的优点检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。 1.2人事管理系统的意义 管理信息系统(Management Information System,以下简称为MIS),是一个将企业生产和经营中的各种内、外部信息进行收集、加工、整理、传递,并有序地存储,以用于管理和决策,是企业增效的信息系统。它能够使企业更加及时、准确、全面、详实的了解所需的信息数据。同时管理信息系统对各种信息数据的进一步加工,能使企业领导层的生产、经营、管理决策依据更加充分,更具有合理性、科学性;从而为社会创造出更多的价值,为企业的发展创造出更多的机会。对于企、事业单位的人事管理系统来说,不需要大型的数据库系统。只需要一个操作方便,功能实用,能满足本中心对数据的管理及需求的系统,能够提高人事管理的效率。 1.3预期目标 我们的设计目标就是在于开发一个功能实用、操作方便,简单明了的人事管理系统.能够录入人事的基本资料,在操作上能够完成诸如添加、修改、删除、

C语言-人事管理系统

人事管理管理系统 [要求] 某高校主要人员有:在职人员(行政人员、教师、一般员工)、退休人员和临时工。现在,需要存储这些人员的人事档案信息:编号、姓名、性别、年龄、职务、职称、政治面貌、最高学历、任职时间、来院时间、人员类别。其中,人员编号唯一,不能重复。 (1)添加删除功能:能根据学院人事的变动情况,添加删除记录; (2)查询功能:能根据编号和姓名进行查询; (3)编辑功能(高级):根据查询对相应的记录进行修改,并存储; (4)统计功能:能根据多种参数进行人员的统计(在职人数、党员人数、女工人数、高学历高职称人数(硕士学位以上或者副教授以上)),统计要求同时显示被统计者的信息; (5)排序功能:按照年龄、来院时间进行排序; (6)保存功能:能对输入的数据进行相应的存储; 一、需求分析: 根据题目要求,职工信息是存放在文件中的,所以应该提供相应的文件的输入输出的功能,在程序中应该有添加删除,查询,编辑,统计,排序,保存等程序实现相应的操作,另外菜单式的选择方式选择程序的功能也是必须需的。另外程序中要求存储的模块,采用的方式均为将原文件中的所有数据读入内存,在内存中处理之后以覆盖的方式写入文件中重新储存,这样的方法容易理解、容易编写,但当文件中的数据量很大时,这种方法也存在一定的难度,在本程序中将N定为100,也即最多可储存的职工人数为100; 二、总体设计: 根据以上需求分析,将程序分成以下几个模块: 1、新建档案信息; 2、删除信息; 3、追加信息; 4、搜索查找信息(按姓名或者编号搜索); 5、浏览全部信息; 6、修改信息; 7、信息排序; 8信息统计; 三、详细设计; 1、主函数: 〈1〉需求分析: 为使系统执行完每部分功能后能够方便的回到系统主界面,main()函数设计的 很简单,只包含一个menu()函数,其余的全部功能都通过menu()函数调用来实现,并通过menu()函数的递归调用实现返回主界面的功能。

c语言课程设计报告学生成绩信息管理系统源代码

实验报告 一、问题陈述及其需求分析 (一)问题陈述 学生信息管理系统是对学生信息的基本管理,其中包括以下及模块: (1)增加一个学生的信息(需输入要增加学生的所有信息); (2)统计本班学生总人数及男女生人数。 (3)分别按照学号查找学生的信息;若找到则输出该学生全部信息,否则输出查找不到的提示信息。 (4)按学号对所有学生信息排序,并输出结果; (5)删除一个学生的信息(需指定要删除学生的学号);同时显示删除后的结果。( 二) 功能需求分析 学生信息管理系统设计 学生信息包括:学号,姓名,性别,出生年月,电话 使之提供以下功能: 1、系统以菜单方式工作 2、建立链表并显示 3、插入新的学生信息 4、删除某学号的学生信息 5、查找某学号的学生信息 6、对学生信息排序 7、统计学生人数 8、输出学生信息 二总体设计 (一)模块 依据程序的数据结构,描述该程序的层次结构,如下图:

1、建立链表并显示 void createlist(struct stucode **r); 2、插入新的学生信息 void insert(struct stucode **r); 3、删除某学号的学生信息 void del(struct stucode **r); 4、查找某学号的学生信息 void search1(struct stucode *r); 5、对学生信息排序 void sort(struct stucode **r); 6、统计学生人数 void search2(struct stucode *r); 7、输出学生信息 void out(struct stucode *r); 1 建立链表并显示 2 添加学生信息 3 删除学生信息 息 4 按学号查找学生信 5 对学生信息排序 6统计学生人数 7输出学员信息 8 学生信息写入文件 0退出 main() 菜单函数

人事管理系统概要设计报告

人事管理系统概要设计报告 1、系统结构设计 1.1系统功能概述 用户管理模块: 能够对不同的用户给出不同的权限(根据角色按模块进行权限分 配),从而为系统提供一定的安全性。所有用户都可以修改自己的用户密码, 系统管理员可以修改其他用户的密码。 系统要求能够对企业员工的相关信息进行管理,如输入、修改、删除和查询 员工的信息。员工的信息除了本身的基本信息,还包括员工的学习、工作经 历信息、家庭成员基本信息等。在删除员工信息同时,需要把该员工的考勤 信息、考评信息和工资信息删除。 用户管理模块处理流程 考勤管理模块: 系统要求能够输入和查询员工每天上下班时间记录(这些信息一般由考勤机自动读入,不使用考勤机的也可以在该功能模块中人工录入),内容包括每天的考勤信息。 允许考勤管理人员在添加或删除考勤信息,允许另外还要求提供“月考勤统计”功能,用于统计员工指定月份的出勤信息。 1.2系统总体结构和模块外部特性设计

2、接口设计 2.1外部接口 2.1.1用户界面 在用户界面部分,根据需求分析的结果,用户需要一个用户友善界面。在界面设计上, 应做到简单明了,易于操作,并且要注意到界面的布局,应突出的显示重要以及出错信息。 外观上也要做到合理化,考虑到用户多对WINDOW 风格较熟悉,应尽量向这一方向靠拢。 在设计上采用窗口对话框方式,在出错显示上可调用Microsoft Visual studio 库中的错误提示 函数。 总的来说,系统的用户界面应作到可靠性、简单性、易学习和使用 2.1.2软件接口 服务器程序可使用Microsoft Visual studio提供的对SQL SERVER的接口,进行对数据库的所有访问。 服务器程序上可使用SQL SERVER的对数据库的备分命令,以做到对数据的保存。 2.1.3硬件接口 在输入方面,对于键盘、鼠标的输入,可用Microsoft Visual studio的标准输入/输出,对 输入进行处理。 在输出方面,打印机的连接及使用,也可用Microsoft Visual studio的标准输入/输出对其进行处理。 2.2内部接口 内部接口方面,各模块之间采用函数调用以及对数据表的存取操作的方式进行信息传 递。具体参数的结构将在下面数据结构设计的内容中说明。接口传递的信息将是以数据结构

高校人事管理系统C++代码

#include #include #includepowered by https://www.sodocs.net/doc/7e907332.html, #include using namespace std; class employee { protected: int number; char name[20]; char sex[6]; char workplace[20]; char place[20]; char nation[6]; char birth[20]; char party[10]; char id[20]; float score[5]; public: Employee *nest; Employee(){} ~Employee(){} char* getname(){ return name; } int getnumber(){ return number; } double getscore(int i){ return score[i];} float get(){ return(score[0]+ score[1]+ score[2]+ score[3]+ score[4]);} void input() { int e=1; cout<<“\t\t\t按提示输入 :”<>workplace ; do { cout<< “\t\t输入性别 :” ; cin>>sex ; if(strcmp(sex,“man”)==0 || strcmp(sex,“woman”)==0) { cout<<“\t\t输入籍贯:”; cin >>place; cout<<“\t\t输入民族:”; cin >>nation;

c语言课程设计报告

C语言程序设计B 课程设计报告 设计题目:学生成绩管理系统年级班级: 学号: 姓名: 指导教师: 2020 年 6 月 18 日

目录 一、设计目的 (3) 二、课程设计内容和要求 (4) 三、总体设计 (5) 四、主要步骤 (12) 五、功能实现 (13) 六、功能测试 (64) 七、评价程序 (83) 八、课程设计体会 (84)

一、设计目的 程序设计能力是当代理工类大学生的必备能力,当学生学习了C语言之后,编程能力远远不能达到开发实际应用程序的要求,特备是对其中的指针、结构体、链表和文件部分的理解和应用都比较弱。 程序设计的目的是通过对面向过程的学习,将C语言的主要知识点进行综合,针对提高学生C语言程序设计能力,强化编写较大的应用软件能力,熟练运用已掌握的知识解决实际需要解决的问题,以达到更加熟知指针、链表、结构体、文件读取、标准库的使用。 主要目的为以下几点: 1、熟练掌握面向过程(结构化)程序设计基本知识; 2、综合运用所学知识解决实际问题; 3、受到面向过程(结构化)程序设计的基本训练; 4、体会面向过程(结构化)开发程序的过程。

二、课程设计内容和要求 1.课程设计内容: 学生通过使用C语言进行编写算法,开发学生成绩管理系统,以实现对学生成绩的管理。 2.课程设计要求 1)具有菜单,可以在菜单上进行选择; 2)能实现学生数据录入、修改、删除、查询; 3)能实现数据排序; 4)有数据输出功能; 5)有数据读取与存储功能; 6)一个学生的数据(称为:每条记录)包含姓名、学号、语文、数 学、英语、总分、名次等信息; 7)以结构方式存储每条记录; 8)多条记录以链表方式存储到内存; 9)随时可将全部数据存储到磁盘文件中,方便下次从磁盘读取数据。

人事管理系统可行性分析1

基于WWW的人事管理系统 可行性研究报告 1/1引言 1.1编写目的 本文提出了一个基于WWW环境的人事管理系统,应用动态服务器页面实现了人事的多条件查询、删除、更新、打印、密码设置等功能。 1.2背景 人事管理是公司企业内部很重要的一个管理事项,但目前大多公司内部人事的管理,基本上是手工操作或是基于dos下的应用,这样对信息的管理者有诸多不便,有的虽然是用foxpro、visual foxpro开发,但由于开发工具本身的限制,对网络功能的支持程度不是很强,为以后软件升级到互联网带来了麻烦。因此有必要开发一个基于网络的劳资人事管理系统,能在网络环境下实现数据的录入、插入、删除、查询、统计、更新、打印等功能。同时,为了信息的保密与安全,系统还要提供一定的安全机制。 Powerbuilder6.5是美国著名的Powersoft公司推出的广泛使用于客户机/服务器体系结构下的应用程序开发工具,具有完整的Web应用开发功能。它同时支持多种关系数据库管理系统,通过微软公司的ODBC接口和专用的大型数据库接口,能够高速读取数据库中的数据。本系统就采用Powerbuilder6.5开发,服务器端的操作系统为Windows NT 4.0,客户端操作系统为Windows 98。 2..现行组织系统那个概况 2.1组织目标和战略 系统的目标是开发一个基于网络的劳资人事管理系统,能在网络环境下实现数据的录入、插入、删除、查询、统计、更新、打印等功能。同时,为了信息的保密与安全,系统还要提供一定的安全机制。 2.2存在的主要问题 人事管理是公司企业内部很重要的一个管理事项,但目前大多公司内部人事的管理,基本上是手工操作或是基于dos下的应用,这样对信息的管理者有诸多不便,有的虽然是用foxpro、visual foxpro开发,但由于开发工具本身的限制,对网络功能的支持程度不是很强,为以后软件升级到互联网带来了麻烦。

人事管理系统设计-数据库原理与应用

课程设计报告 课程设计名称:数据库原理与应用 系部:二系 学生姓名:韦敏 班级:10信息与计算科学 学号:20100202111 成绩: 指导教师:陈林 开课时间:2012-2013 学年 1 学期一.设计题目:人事管理系统

二.主要内容:人事管理系统主要是针对企业单位内部组织结构和员工信息的管理,本系统的主要功能为:员工信息管理,部门信息管理,系统用户管理,故我们需要实现如下功能的建设: 1)员工信息管理:每个部门的员工各种信息的添加,修改,删除,包括员工的基本信息、学历信息、职称等信息,以及查看符合各种条件的员工部分与总体信息; 2)部门信息管理:查看部门信息,包括部门编号、部门名称、部门经理、部门简介等信息;具有更新部门的功能。 3)系统用户管理:查看系统用户信息,包括用户名和用户类型(系统管理员和普通用户)等信息; 三.具体要求 1.课程设计的内容独立自主完成,课程设计报告内容完整、格式规范、排版整 洁美观; 2.后台数据库采用MS SQL SERVER 2005,前台界面语言不限,编写的程序代 码,须有较详细的注释说明; 四.进度安排 课程设计安排: 16周 星期一讲解课程设计的内容,安排每一天的具体任务,分配并熟悉题目; 星期二需求分析:给出系统的功能需求、性能需求,并绘制DFD和DD; 星期三概念结构设计:绘制实体属性图(可选),局部ER图和全局ER图; 星期四逻辑结构设计:转换、优化; 星期五逻辑结构设计:外模式设计 17周 星期一物理结构设计及数据库实施; 星期二应用程序编制调试、整理课程设计报告; 星期三应用程序编制调试、整理课程设计报告,并检查;

C语言课设之人事管理系统之欧阳家百创编

C语言课程设计 欧阳家百(2021.03.07) ——人事管理系统题目要求: 人事管理管理系统 [要求] 某高校主要人员有:在职人员(行政人员、教师、一般员工)、退休人员和临时工。现在,需要存储这些人员的人事档案信息:编号、姓名、性别、年龄、职务、职称、政治面貌、最高学历、任职时间、来院时间、人员类别。其中,人员编号唯一,不能重复。 (1)添加删除功能:能根据学院人事的变动情况,添加删除记录; (2)查询功能:能根据编号和姓名进行查询; (3)编辑功能(高级):根据查询对相应的记录进行修改,并存储; (4)统计功能:能根据多种参数进行人员的统计(在职人数、党员人数、女工人数、高学历高职称人数(硕士学位以上或者副教授以上)),统计要求同时显示被统计者的信息;(5)排序功能:按照年龄、来院时间进行排序; (6)保存功能:能对输入的数据进行相应的存储; 一、需求分析: 根据题目要求,职工信息是存放在文件中的,所以应该提供相应的文件的输入输出的功能,在程序中应该有添加删除,查询,编辑,统计,排序,保存等程序实现相应的操作,另外菜单式的选择方式选择程序的功能也是必须需的。另外程序中要求存储的模块,采用的方式均为将原文件中的所有数据读入内存,在内存中处理之后以覆盖的方式写入文件存贮,这样的方法在一定程度上提高了对数据处理的灵活性,较容易理解,但存在处理中遇到以外情况而丢失数据的风险,另外当文件中的数据量很大时,这种方法也存在一定的难度,在本程序中将N定为100,基本上能满足要求; 二、总体设计: 根据以上需求分析,将程序分成以下几个模块: 1、新建数据文件(build new data); 2、添加记录(add data);

C语言课程设计报告-模板

C语言课程设计报告 班级:16 物联网 一、题目说明 (1)读取输入信息,能正确进行数字运算

(2)拥有记忆功能,可查询最近几次计算结果并继续进行数字运算。 二、基本功能实现 (1)能实现两个数之间的加减,乘,除,乘方,开方等运算。 (2)实现记忆功能,可保留近十位结果,可用#键查看。(3)*键作为清0键,清除当前屏幕上的值为0表示重新开三、设计流程(可以画流程图,可以直接写说明)

四、代码 #include #include #include #include double yunsuan(double a, char operate, double b); //处理数值之间的运算void PutRes(double array[], double res, int *i); //保存该次运算结果 int main() { char str[40]; double a = 0; double b = 0; double res = 0; double history[10] = {0,0,0}; char opt; int i = 0; printf("欢迎进入计算功能(eg: 1 \n+ 1 ; '#':查询历史结果; 'q':退出程序)·\n"); while(1){

fgets(str,40,stdin); //将从键盘的一整行标准输入保存在字符串str中 if(sscanf(str,"%lf", &a) == 1){ //将str以长浮点型的格式放入a中,如果返回值为1,说明输入的是数值, scanf("%c %lf", &opt, &b); //获取操作符的值和另外一个操作数的值 res = yunsuan(a,opt,b); //调用yunsuan()函数计算,并将结果给res printf("%lf %c %lf = %lf\n\n",a, opt, b, res); PutRes(history, res, &i); //调用函数PutRes()将本次结果保存到数组history中(i用引用传递) // printf("%d\n", i); }else if(sscanf(str,"%c",&opt) == 1){ //将str以字符型的格式放入opt中,如果返回值为1,说明输入的是字符 if(opt == '#'){ //如果opt为‘#’,则显示history 中的数值 int j = 0; for(j = 0; j < i; ++j){ //i为history中存放的数值个数 printf(" %lf ", history[j]); } printf("\n");

人事管理系统实验报告

摘要 人事管理是企业管理中的一个重要内容,随着时代的进步,企业也逐渐变得庞大起来。如何管理好企业内部员工的信息,成为企业管理中的一个大问题。在这种情况下,开发一个人事管理系统就显得非常必要。本系统结合公司实际的人事、制度,经过实际的需求分析,采用功能强大的Visual Basic6.0作为开发工具而开发出来的单机版人事管人事理系统。整个系统从符合操作简便、界面友好、灵活、实用、安全的要求出发,本企业人事管理系统具有如下功能:员工基本信息的录入、修改、查询、删除模块,员工假条信息录入、修改、查询、删除模块,员工工资信息的录入,计算,查询,以及系统用户的设置以及系统的维护功能。为企业人事管理提供信息咨询,信息检索,信息存取等服务,基本上能够满足现代企业对人事管理的需要。本文系运用规范研究方法进行的专题研究。全文分六个部分:第一部分,是本课题的来源和课题研究的目的和意义;第二部分,是开发工具的选择,本系统主要运用的是Visual Basic 6.0作为系统前台应用程序开发工具,Access作为后台数据库;第三部分,是系统的需求分析,主要是人事管理系统的需求分析;第四部分,是系统分析与实现,包括系统功能模块的设计和数据库的设计;第五部分,是代码的设计与实现,系统事件运行的主要代码;第六部分,是系统的实现,最后,是软件的测试 关键词:人事管理系统设计SQL Server 2005数据库Visual Basic 6.0 维护测试

第一章绪论 1.1 引言 随着计算机技术的飞速发展,计算机在企业管理中应用的普及,利用计算机实现企业人事管理势在必行。人力资源管理是结合公司实际的人事、制度,经过实际的需求分析,采用功能强大的Visual Basic6.0作为开发工具而开发出来的单机版人事管人事理系统。整个系统从符合操作简便、界面友好、灵活、实用、安全的要求出发,本企业人事管理系统具有如下功能:员工基本信息的录入、修改、查询、删除模块,员工假条信息录入、修改、查询、删除模块,员工工资信息的录入,计算,查询,以及系统用户的设置以及系统的维护功能。为企业人事管理提供信息咨询,信息检索,信息存取等服务,基本上能够满足现代企业对人事管理的需要。 1.2 项目背景 本课题基于我国企业管理信息化建设现状,结合在实际工作中所遇到的问题和收获,对企业人事管理系统在设计开发等方面进行研究,重点研究系统开发中所采用的软硬件平台规范、数据库结构设计、开发工具的选择与使用,目的是从技术手段的角度阐述如何实现企业从传统经营管理模式向信息化管理模式转变的过程,以及人事管理系统在企业管理信息化中所起到的重要作用。本课题的开发主要是要花费相当多的人力和时间,虽然开发出来的软件可能离具体产生效益还有一定的距离。但是,出于通过毕业设计来丰富自己的专业知识,并从长远利益来考虑,本课题的设计开发还是具有相当大的经济可行性的。 1.3 实现意义 现代信息技术的发展,在改变着我们的生活方式的同时,也改变着我们的工作方式,使传统意义上的人事管理的形式和内涵都在发生着根本性的变化。在过去,一支笔和一张绘图桌,可能就是进行办公的全部工具。今天,电脑、扫描仪和打印机等,已基本取代了旧的办公用具。如今,人事管理己完全可以通过电脑进行,并在计算机辅助下准确快速地完成许多复杂的工作。这些都大大地缩短管理的时间。而今天,人事管理的内容己经转变为对更为广泛的系统价值的追求。信息管理,如今已是一个热门话题,它已为许

c人事管理系统报告

课程设计报告 课程名称面向对象课程设计 设计题目人事管理系统 专业班级 姓名 学号 指导教师 起止时间2010年12月20日-12月31日

成绩评定 电气与信息学院

人事管理系统 一、课程设计的目的 现代信息技术的发展,在改变着我们的生活方式的同时,也改变着我们的工作方式,使传统意义上的人事管理的形式和内涵都在发生着根本性的变化。在过去,一支笔和一张绘图桌,可能就是进行办公的全部工具。今天,电脑、扫描仪和打印机等,已基本取代了旧的办公用具。如今,人事管理己完全可以通过电脑进行,并在计算机辅助下准确快速地完成许多复杂的工作。这些都大大地缩短管理的时间。而今天,人事管理的内容己经转变为对更为广泛的系统价值的追求。信息管理,如今已是一个热门话题,它已为许多企业所采用。我认为,在现代化的进程中,引入现代管理的思想,建立一套可面向企事业单位人事的信息管理系统,也是十分必要的 二、课程设计的要求 要求了解企业管理信息系统开发的全过程,理解信息系统课程相关的概念,掌握管理信息系统的开发方法。主要包括:登陆的两个用户:管理员、职工 管理员:可以对职工信息进行添加信息、删除信息、查询员工信息、修改员工信息、浏览员工信息。 用户:可以对自己的信息进行浏览、修改、查询;还可以对别人的信息进行查询,浏览。 开发这个系统的目的就是帮助企业的人力资源部门提高工作效率,实现企业人事信息管理的系统化,规范化和自动话。根据这个系统最终实现的主要功能如下: 系统部分:主要完成本系统的维护工作。 员工基本信息部分:主要完成员工基本信息的管理。 本系统是个简单的程序,由于时间和技术有限,功能不是多完整,多具体,还请包涵。 本系统的功能模块图如下:

c语言课程设计报告书

课程设计报告书 所属课程:c语言 项目:库函数模拟系统 指导老师:邹姝稚 班级:软件1401 姓名:江闯 学号:141403107 分数:

1.任务描述: 本系统开发的代码模拟了下列库函数的功能: (1).模拟gets和puts的功能:能接收一个字符串,将其写入ASCII文件,并且可以读出显示。 (2).在不使用字符串库函数的条件下,编程实现字符串的拷贝,连接,求长,倒置功能。 (3).字符串加密功能:将一段明文建立到一个ASCII文件中,按加密的算法加密后写入密文文件,最终实现将明文和密文文件都显示出来。 (4).编程实现字符串与对应数字的相互转换功能。 2.总体设计: 模块调用图: 图1

函数调用图: 图2 函数功能: (1)函数gp( ):模拟gets和puts的功能 (2)函数kaobei( ):实现字符串的拷贝 (3)函数lianjie( ):实现字符串的连接 (4)函数qiuchang( ):实现字符串的求长 (5)函数daozhi( ):实现字符串的倒置 (6)函数jiami( ):实现字符串的加密功能,最后将明文和密文文件都显示出来 (7)函数zhuanhuan1( ):将数字字符串转换为对应的数字 (8)函数zhuanhuan2( ):将数字转换为对应的数字字符串 3.详细设计: (1).模仿gets和puts功能: gets和puts功能与scanf和printf函数的功能相似,但是也不是完全相同,本系统模拟功能的程序总共运用了两次函数调用技术,模拟gets运用了一次,模拟puts运用了一次。 (2)..字符串的拷贝功能: 字符串的拷贝功能程序设计源于strcpy的功能,其中运用了字符串数组和指针的相关技术,还运用了一组while语句,实现语句的循环,从而将一个字符串拷贝到一个空数组中。

C语言课程设计-人事管理系统

C语言课程设计 ——人事管理系统

题目要求: 人事管理管理系统 [要求] 某高校主要人员有:在职人员(行政人员、教师、一般员工)、退休人员和临时工。现在,需要存储这些人员的人事档案信息:编号、姓名、性别、年龄、职务、职称、政治面貌、最高学历、任职时间、来院时间、人员类别。其中,人员编号唯一,不能重复。 (1)添加删除功能:能根据学院人事的变动情况,添加删除记录; (2)查询功能:能根据编号和姓名进行查询; (3)编辑功能(高级):根据查询对相应的记录进行修改,并存储; (4)统计功能:能根据多种参数进行人员的统计(在职人数、党员人数、女工人数、高学历高职称人数(硕士学位以上或者副教授以上)),统计要求同时显示被统计者的信息; (5)排序功能:按照年龄、来院时间进行排序; (6)保存功能:能对输入的数据进行相应的存储; 一、需求分析: 根据题目要求,职工信息是存放在文件中的,所以应该提供相应的文件的输入输出的功能,在程序中应该有添加删除,查询,编辑,统计,排序,保存等程序实现相应的操作,另外菜单式的选择方式选择程序的功能也是必须需的。另外程序中要求存储的模块,采用的方式均为将原文件中的所有数据读入内存,在内存中处理之后以覆盖的方式写入文件存贮,这样的方法在一定程度上提高了对数据处理的灵活性,较容易理解,但存在处理中遇到以外情况而丢失数据的风险,另外当文件中的数据量很大时,这种方法也存在一定的难度,在本程序中将N定为100,基本上能满足要求; 二、总体设计: 根据以上需求分析,将程序分成以下几个模块: 1、新建数据文件(build new data); 2、添加记录(add data); 3、删除记录(delete data); 4、按工号搜索(search by number); 5、按姓名搜索(search by name); 6、浏览全部数据(browse all); 7、修改数据(modify the data); 8、排序功能(order the volume); 9、统计功能(data a volume); 系统功能模块图如下:

人事管理系统需求分析实验报告+++

一、实验目的 1、掌握软件需求结构化分析方法; 2、掌握使用Visio或Word建立分析模型; 3、掌握软件需求说明书的撰写。 二、实验原理 1、需求分析的基本要点 2、分析建模(三种模型) 3、规格说明(需求说明书) 三、实验环境 ·安装了Word或Visio软件的计算机 ·安装SQL Server 2008 四、实验任务与要求 导出系统的详细的逻辑模型。通常用数据流图、实体-联系图、状态转换图、数据字典和主要处理算法描述来共同表示这个模型 五、实验内容与步骤 (1)问题背景及描述 人事档案管理是现代企业人力资源管理中的重要内容,也是人力资源开发利用的基础性工作。人事档案管理主要需要完成人员进出、离退休、升迁、岗位变动、职称变动、学位变动,以及档案管理人员的变动的管理。 (2)功能分析 初步分析“人事档案管理系统”应该具备以下功能: 1)职员个人资料的增加、删除和修改 2)人事信息的查询、打印 3)人事信息的分析、汇总和统计 4)人事档案管理人员的变化及操作授权 因此,可以将系统划分为三大模块:

模块1、人事档案管理:人事信息维护,个人基本信息、婚姻信息、学历、工资信息的插入、删除和修改,人事信息的查询、浏览、打印、分类汇总、总计和生 成分析报表。 模块2、系统账户管理:对系统用户进行管理,包括登录、退出、操作记录。 模块3、系统数据管理:包括数据备份和恢复、部分数据管理、企业常用数据管理(3)建立系统流程图 (4)建立数据流图 (1)人事档案管理的数据流图 通过对“人事档案管理系统流程图”抽象处理,得到“人事档案管理数据流图”。 用户数据 图1 人事档案管理系统流程图 图2 人事档案管理系统数据流图

人事管理系统-软件工程实验报告

盛年不重来,一日难再晨。及时宜自勉,岁月不待人。 软件工程实验报告 课题:人事管理系统 学生姓名: 学号: 专业班级: 指导教师: 同组成员:

需求分析 一、实验目的 掌握软件需求的结构化分析方法。 二、实验任务与实验要求 导出系统详细的逻辑模型,这里用数据流图来表示。 三、实验内容 (1)功能分析 经过初步分析“人事管理系统”应该具备以下主要功能。 1、职员个人信息资料的增加、修改和删除; 2、职员的考勤录入和查询; 3、职员工资结算和查询; 4、人事管理人员的变化和操作授权; 由于是使用计算机管理,就带来了新的功能:用户登陆、操作人员的管理、基本数据的维护、由数据安全产生的数据备份与恢复。 (2)、关系模式 在满足函数依赖和无损连接的基础上,使数据的设计更加合理。在本系统中只有3个实体,那就是普通员工、管理员、超级管理员,他们权限的不听通过角色来区分。在整个系统中超级管理员只有一人,管理员二人。一个人只可以在普通员工、管理员、超级管理员中处于一个角色,而不可以兼任。其具体的关系模式如下: 普通员工(员工号,密码,姓名,性别,出生年月,身份证号,联系电话,就职时间) 管理员(管理员号,密码,姓名,性别,出生年月,身份证号,联系电话,就职时间) 超级管理员(超级管理员号,密码,姓名,性别,出生年月,身份证号,联系电话,就职时间) 工资(员工号,时间,基本工资,提成,奖金)

考勤(员工号,时间,迟到,早退,管理员号) 注意:“”表示主码,“”表示既是主码又是外码。E-R图如下所示

数据字典设计: 为了方便数据库的管理和维护,本系统只设计一个数据库workers.mdb,其中包含worker(员工信息表)、manager(考勤信息表)、booklist(工资信息表) 表1-1 worker(员工信息表)各字段设计

C语言课设之人事管理系统

C语言课程设计 ——人事管理系统

题目要求: 人事管理管理系统 [要求] 某高校主要人员有:在职人员(行政人员、教师、一般员工)、退休人员和临时工。现在,需要存储这些人员的人事档案信息:编号、姓名、性别、年龄、职务、职称、政治面貌、最高学历、任职时间、来院时间、人员类别。其中,人员编号唯一,不能重复。 (1)添加删除功能:能根据学院人事的变动情况,添加删除记录; (2)查询功能:能根据编号和姓名进行查询; (3)编辑功能(高级):根据查询对相应的记录进行修改,并存储; (4)统计功能:能根据多种参数进行人员的统计(在职人数、党员人数、女工人数、高学历高职称人数(硕士学位以上或者副教授以上)),统计要求同时显示被统计者的信息; (5)排序功能:按照年龄、来院时间进行排序; (6)保存功能:能对输入的数据进行相应的存储; 一、需求分析: 根据题目要求,职工信息是存放在文件中的,所以应该提供相应的文件的输入输出的功能,在程序中应该有添加删除,查询,编辑,统计,排序,保存等程序实现相应的操作,另外菜单式的选择方式选择程序的功能也是必须需的。另外程序中要求存储的模块,采用的方式均为将原文件中的所有数据读入内存,在内存中处理之后以覆盖的方式写入文件存贮,这样的方法在一定程度上提高了对数据处理的灵活性,较容易理解,但存在处理中遇到以外情况而丢失数据的风险,另外当文件中的数据量很大时,这种方法也存在一定的难度,在本程序中将N定为100,基本上能满足要求; 二、总体设计: 根据以上需求分析,将程序分成以下几个模块: 1、新建数据文件(build new data); 2、添加记录(add data); 3、删除记录(delete data); 4、按工号搜索(search by number); 5、按姓名搜索(search by name);

相关主题