搜档网
当前位置:搜档网 › 数据结构课程设计 简单的职工管理系统

数据结构课程设计 简单的职工管理系统

数据结构课程设计 简单的职工管理系统
数据结构课程设计 简单的职工管理系统

数据结构课程设计

题目名称:简单的职工管理系统

计算机科学与技术学院

一.需求分析

1.问题描述

对单位的职工进行管理,包括插入、删除、查找、排序等功能。

2.要求

职工对象包括姓名、性别、出生年月、工作年月、学历、职务、住址、电话等信息。

(1)新增一名职工:将新增职工对象按姓名以字典方式职工管理文件中。

(2)删除一名职工:从职工管理文件中删除一名职工对象。

(3)查询:从职工管理文件中查询符合某些条件的职工。

(4)修改:检索某个职工对象,对其某些属性进行修改。

(5)排序:按某种需要对职工对象文件进行排序。

3.实现提示

职工对象数不必很多,便于一次读入内存,所有操作不经过内外存交换。

(1)由键盘输入职工对象,以文件方式保存。程序执行时先将文件读入内存。

(2)对职工对象中的"姓名"按字典顺序进行排序。

(3)对排序后的职工对象进行增、删、查询、修改等操作。

二.概要设计

1.设计一个职工的结构体

typedef struct Worker

{

char* name;

char* sex;

char* Bothdate;

char* Workdate;

char* school;

char* duty;

char* address;

char* phone;

struct Worker *next;

}worker;

2.主体函数

(1).输入函数

void Scanfwork(worker** phead,worker** pend,int num);

(2).输出函数

void Printfwork(worker* phead);

(3).查询职工函数

void Findworker(worker* phead);

(4).更新职工函数

void Updata(worker* phead);

(5).删除职工函数

void Delwork(worker** phead,worker** pend);

void Delete(worker** phead,worker** pend,char* name);

(6).按字典排序函数

worker* Sort(worker** phead,worker** pend,int num);

(7).文件调用函数

void save(worker* phead);

(8).增加职工函数

void Addworker(worker** phead,worker** pend,worker* p);

worker* GetnodeIn();

三.详细设计

1.流程图

2.代码详细分析

(1).输入函数

void Scanfwork(worker** phead,worker** pend,int num)

{

int i;

srand((unsigned int)time(0));

for(i=0;i

{

Addworker(phead,pend,Getwork());

}

}

(2).输出函数

void Printfwork(worker* phead)

{

while(phead)

{

printf("%s %s %s %s %s %s %s %s\n",phead->name,phead->se x,phead->Bothdate,phead->Workdate,phead->school,phead->duty,phead->phone, phead->address);

phead=phead->next;

}

printf("b返回主菜单");

key=getchar();

switch (key)

{

case 'b':

return;

break;

default:

printf("按错了\n");

}

}

(3).查询职工函数

void Findworker(worker* phead)

{

char* keyword = NULL;

worker* w=NULL;

worker* newhead=NULL;

worker* newend=NULL;

worker* pDel=NULL;

worker* bj=phead;

while(1)

{

while(1)

{

printf("请输入要查询的关键字:");

keyword=getstring();

printf("按a键确认你的输入,按其他键重新输入:");

if(getkey()=='a')

{

break;

}

else

{

free(keyword);

keyword=NULL;

}

}

phead=bj;

while(phead)

{

if(strncmp(phead->name,keyword,strlen(keyword))==0||

strncmp(phead->sex,keyword,strlen(keyword))==0||

strncmp(phead->Bothdate,keyword,strlen(keyword))==0||

strncmp(phead->Workdate,keyword,strlen(keyword))==0||

strncmp(phead->school,keyword,strlen(keyword))==0||

strncmp(phead->duty,keyword,strlen(keyword))==0||

strncmp(phead->address,keyword,strlen(keyword))==0||

strncmp(phead->phone,keyword,strlen(keyword))==0) {

w=(worker*)malloc(sizeof(worker));

w->name=phead->name;

w->sex=phead->sex;

w->Bothdate=phead->Bothdate;

w->Workdate=phead->Workdate;

w->duty=phead->duty;

w->school=phead->school;

w->address=phead->address;

w->phone=phead->phone;

w->next=NULL;

Addworker(&newhead,&newend,w);

}

phead=phead->next;

}

if(newhead!=NULL)

{

Printfwork(newhead);

while(newhead)

{

pDel=newhead;

newhead=newhead->next;

free(pDel);

pDel=NULL;

}

newhead=NULL;

newend=NULL;

}

if(key=='b')

{

return;

}

else

{

printf("没有找到\n");

}

}

}

(4).更新职工函数

void Updata(worker* phead)

{

worker* bj=phead;

char* name1;

while(1)

{

printf("请输入要修改的名字");

name1=getstring();

phead=bj;

while(phead)

{

if(strncmp(phead->name,name1,strlen(name1))==0)

{

printf("请输入新的电话号码");

free(phead->phone);

phead->phone=getstring();

}

phead=phead->next;

}

printf("y继续修改,其他键返回");

if(getkey()!='y')

{

return;

}

}

(5).删除职工函数

void Delwork(worker** phead,worker** pend)

{

char* name1;

while(1)

{

printf("请输入删除的姓名:");

name1=getstring();

Delete(phead,pend,name1);

printf("按y继续删除其他键返回主菜单\n");

if(getkey()!='y')

{

return;

}

}

}

void Delete(worker** phead,worker** pend,char* name)

{

worker* bj= *phead;

worker* pDel=NULL;

if(strncmp((*phead)->name,name1,strlen(name1))==0)

{

pDel=*phead;

*phead=(*phead)->next;

free(pDel);

pDel=NULL;

return;

}

while(bj->next!=NULL)

{

if(strncmp(bj->next->name,name1,strlen(name1))==0)

{

pDel=bj->next;

bj->next=bj->next->next;

free(pDel);

pDel=NULL;

if(bj->next==NULL)

{

*pend=bj;

}

return;

}

bj=bj->next;

}

}

(6).按字典排序函数

worker* Sort(worker** phead,worker** pend,int num)

int i;

int j;

worker* bj=*phead;

worker* sign=NULL;

worker* sign1=NULL;

char temp[20]={0};

char temp1[20]={0};

char temp2[20]={0};

char temp3[20]={0};

char temp4[20]={0};

char temp5[20]={0};

char temp6[15]={0};

char temp7[12]={0};

for(i=0;i

{

bj=(*phead);

sign=bj;

for(j=i+1;j

{

sign1=sign->next;

if(strncmp(sign->name,sign1->name,strlen(sign1->name))>=0)

{

strcpy(temp,sign->name);

strcpy(temp1,sign->sex);

strcpy(temp2,sign->Bothdate);

strcpy(temp3,sign->Workdate);

strcpy(temp4,sign->school);

strcpy(temp5,sign->duty);

strcpy(temp6,sign->address);

strcpy(temp7,sign->phone);

strcpy(sign->name,sign1->name);

strcpy(sign->sex,sign1->sex);

strcpy(sign->Bothdate,sign1->Bothdate);

strcpy(sign->Workdate,sign1->Workdate);

strcpy(sign->school,sign1->school);

strcpy(sign->duty,sign1->duty);

strcpy(sign->address,sign1->address);

strcpy(sign->phone,sign1->phone);

strcpy(sign1->name,temp);

strcpy(sign1->sex,temp1);

strcpy(sign1->Bothdate,temp2);

strcpy(sign1->Workdate,temp3);

strcpy(sign1->school,temp4);

strcpy(sign1->duty,temp5);

strcpy(sign1->address,temp6);

strcpy(sign1->phone,temp7);

}

sign=sign->next;

}

}

return *phead;

}

(7).文件调用函数

void save(worker* phead)

{

FILE* pf;

fopen_s(&pf,"F:\\worker.txt","w+");

while(phead)

{

fprintf(pf,"%s %s %s %s %s %s %s %s\n",phead->name,phead->sex,phead->Bothdate,phead->Workdate,phead->school,phead->duty,phead->phone,phead->address);

phead=phead->next;

}

fclose(pf);

}

(9).增加职工函数

void Addworker(worker** phead,worker** pend,worker* p)

{

if(*phead==NULL)

{

*phead=p;

}

else

{

(*pend)->next=p;

}

*pend=p;

}

worker* GetnodeIn()

{

worker* w=(worker*)malloc(sizeof(worker));

printf("请输入名字\n");

w->name=getstring();

printf("请输入性别\n");

w->sex=getstring();

printf("请输入出生年月\n");

w->Bothdate=getstring();

printf("请输入工作年月\n");

w->Workdate=getstring();

printf("请输入学历\n");

w->school=getstring();

printf("请输入职务\n");

w->duty=getstring();

printf("请输入电话\n");

w->phone=getstring();

printf("请输入住址\n");

w->address=getstring();

w->next=NULL;

return w;

}

四.调试分析

1.在写职工程序的时候遇到了单链表排序问题,解决的方法我选择了询问网络以及身边的朋友

2.当写删除的时候遇到了头删除的问题,解决方法我选择了查看书籍

3.当调用文件保存的时候也遇到了问题,例如文件内容不能直接覆盖,数据不能全部输出等问题,解决的方法我选择了询问网络,查看视频等

4.在写职工程序的时候,虽然遇到了很多问题,我通过自己的努力以及身边朋友的帮助,使我克服了问题,这次的课程设计提高我自己写代码能力,以及训练了我运用链表的增删改查方面的知识和文件的调用存取方面的知识。

五.用户使用说明

(1).可以直接运行程序,当运行程序后,会有五个选项

(2).可以通过选择序号来完成自已有想要做的事情

(3).数据会自动的存在文本文档,可以直接选择查看

(4).q可以直接退出程序

六.测试结果

(1).菜单测试结果

(2).查看职工测试结果

(3).添加职工测试结果

(4).查询职工测试结果

(5).修改职工测试结果

(6).删除职工测试结果

附录:

#include

#include

#include

#include

char key;

int G_key;

typedef struct Worker

{

char* name;

char* sex;

char* Bothdate;

char* Workdate;

char* school;

char* duty;

char* address;

char* phone;

struct Worker *next;

}worker;

worker* Getwork();

char* Getname();

char* Getsex();

char* GetBothdate();

char* GetWorkdate();

char* Getschool();

char* Getduty();

char* Getaddress();

char* Getphone();

char getkey();

char* getstring();

void Addworker(worker** phead,worker** pend,worker* p);

worker* GetnodeIn();

void Scanfwork(worker** phead,worker** pend,int num); void Printfwork(worker* phead);

void Findworker(worker* phead);

void Updata(worker* phead);

void Delwork(worker** phead,worker** pend);

void Delete(worker** phead,worker** pend,char* name); worker* Sort(worker** phead,worker** pend,int num); void save(worker* phead);

int main()

{

worker* phead=NULL;

worker* pend=NULL;

worker* bj=NULL;

char c;

G_key=12;

Scanfwork(&phead,&pend,G_key);

bj=phead;

while(1)

{

printf("1.查看职工信息\n");

printf("2.添加职工信息\n");

printf("3.查询职工信息\n");

printf("4.修改职工信息\n");

printf("5.删除职工信息\n");

printf("q.退出\n");

c=getkey();

switch(c)

{

case '1':

Printfwork(Sort(&phead,&pend,G_key));

save(Sort(&phead,&pend,G_key));

break;

case '2':

Addworker(&phead,&pend,GetnodeIn());

G_key+=1;

Printfwork(Sort(&phead,&pend,G_key));

save(Sort(&phead,&pend,G_key));

break;

case '3':

Findworker(phead);

break;

case '4':

Updata(phead);

save(Sort(&phead,&pend,G_key));

break;

case '5':

Delwork(&phead,&pend);

G_key-=1;

save(Sort(&phead,&pend,G_key));

break;

case 'q':

return;

break;

}

}

return 0;

}

《员工信息管理系统》详细设计说明书

《员工信息管理系统详细设计说明书》 一、引言 编写目的 根据需求规格说明书、概要设计说明书,在仔细考虑讨论之后,我们对员工信息管理系统软件功能的划分、数据结构、软件总体结构的实现有了进一步的想法。本说明书的预期读者是与员工信息管理系统软件开发有联系的决策人,开发组成人员,扶助开发者,支持本项目的领导和公司人员,软件验证者。 背景 利用先进的管理手段,提高人事信息的管理水平,是每一现代公司所面临的重要课题。为了解决这一重要课题,就必须有一套科学,高效,严密,实用的人事信息管理系统。现代公司的人事信息管理都是在计算机上实现的,采用现代计算机管理系统来进行管理,提供规范,统一的服务,它在管理系统中的应用不仅可以简化,规范各机构的日常操作,而且可以使企业人事信息管理更加方便,简单,快捷,清晰,从而减轻工作人员的劳动强度,减少企业的财政消耗。 定义 SQL Server:所用的数据库管理系统 VS 2010:所用的开发软件 二、程序(一)设计说明 程序描述 主模块 功能 建立与数据库连接 获取系统设置 能够跳转至子模块:登陆、注册等模块。 输入、输出项 用户鼠标点击登陆、注册按钮 跳转至相应模块界面 流程逻辑

选择项 登陆系统注册系统查询系统管理系统界面设计 功能实现方法 '跳转登陆页面 Protected Sub LinkButton1_Click(ByVal sender As Object, ByVal e As EventArgs) Handles If ("UserName") Is Nothing Then ("") Else "", "") End If End Sub '跳转注册页面 Protected Sub lbtnRegister_Click(ByVal sender As Object, ByVal e As EventArgs) Handles ("") End Sub 三、程序(二)设计说明 程序描述

简单的JAVA员工信息管理系统源码

简单的J A V A员工信息 管理系统源码 IMB standardization office【IMB 5AB- IMBK 08- IMB 2C】

据库连接 3.查询 4.增、5删 6改(操作数据库) import .*; public class EmpManageSys implements ActionListener { Connection con; Statement stmt; String sql; ResultSet rs; StringBuffer sb = new StringBuffer(); JTextField jtf2 = new JTextField("张飞",10); JTextField jtf3 = new JTextField(10); JTextField jtf4 = new JTextField(10); JTextField jtf7 = new JTextField(10); JTextField jtf5 = new JTextField(10); JTextField jtf6 = new JTextField(10); JTextField jtf8 = new JTextField(10); JTextField jtf9 = new JTextField(10); JTextArea jta10 = new JTextArea(50, 40); public void actionPerformed(ActionEvent e) { String str = (); if ("查询".equals(str)) { quals(str)) { quals(str)) { quals(str)) { EmpManageSys() { createGUI(); connectToDataBase(); } public void searchEmp() { (""); try { stmt = (); oLowerCase().trim() + "or id=" + ().toLowerCase().trim() + "or engName=" + ().toLowerCase().trim() + "or UNIT=" + ().toLowerCase().trim() + "or TEAM=" + ().toLowerCase().trim() + "or Phone=" + ().toLowerCase().trim() + "or region=" + ().toLowerCase().trim() + "or busStation=" + ().toLowerCase().trim();

数据库课程设计—企业工资管理系统(java版完整代码)

课程设计报告企业工资管理系统 姓名XXX 班级XXXXX 学号XXXXXX 课程名称数据库原理及应用指导教师 201X年X月X日

目录 一.工资管理系统需求分析………………………………… 1.1功能需求………………………………………………… 1.1.1功能划分……………………………………… 1.1.2功能描述……………………………………………1.2性能需求………………………………………………… 1.3数据流图……………………………………………… 二.总体设计………………………………………………… 2.1数据库概念设计………………………………………… 2.2功能模块………………………………………………… 三.系统详细设计…………………………………………… 3.1数据库逻辑设计………………………………………… 3.2各模块功能……………………………………………… 3.2.1职工信息管理系统………………………………… 3.2.2职工工资管理系统………………………………… 3.2.3职工津贴管理系统………………………………… 四.系统实现………………………………………………… 4.1界面截图………………………………………………… 4.1.1主界面及工资基本信息界面…………………… 4.1.2登录界面………………………………………… 4.1.3系统主界面……………………………………… 4.1.4信息录入,修改,删除,查询界面………… 4.2设计代码………………………………………………… 五.实验总结…………………………………………………

1、需求分析 1.1功能需求 1.1.1功能划分 (1)、员工信息表;及时反映员工的基本信息 (2)、员工津贴表,反映员工津贴 (3)、员工基本工资表 1.1.2 功能描述 (1)、基本工资的设定 (2)、津贴的设定 (3)、计算出月工资 (4)、录入员工工资信息 (5)、添加员工工资信息 (6)、更改员工工资信息 1.2性能需求 此工资管理系统对工资数据精度的计算能在默认情况之下精确到小数点后3位小数,即是精确到分的计算。但在用户使用过程中,能自行根据实际情况进行小数计算精度的设定,最大能允许保留小数点后5位的精度。在时间特性上,当用户发出命令请求时的服务器的响应时间、对数据更新处理、工资数据的查询检索等上,同样要求系统响应时间不会超过0.5秒时间。系统支持多种操作系统的运行环境,多不同操作系统,不同文件格式的磁盘上的数据均能实现信息的互通,及共享。当服务器移植到其他的系统平台,如:Linux平台下时,同样能和其他的系统进行数据存取同步,不会出现系统之间互不兼容的情况,系统支持多系统之间的互连互通,系统有巨大的强健性。本课程设计是用Java语言编写,mysql数据库。 1.3数据流图 根据工资管理要求及用户需求调查分析,得到以下数据流图 图1.1第一层数据流图

职工信息管理系统

职工信息管理系统 1.可行性分析 在当今社会,互联网的发展,给人们的工作和生活带来了极大的便利和高效,信息化,电子化已经成为节约运营成本,提高工作效率的首选。 当前大量企业的员工管理尚处于手工作业阶段,不但效率低下,还常常因为管理的不慎而出现纰漏。因此部分企业需求,设计企业员工信息管理系统,以帮助企业达到员工管理办公自动化、节约管理成本、提高企业工作效率的目的。员工信息管理系统主要对企业员工的信息进行集中管理,方便企业建立一个完善的、强大的员工信息数据库,它是以SQL2000数据库作为开发平台,使用java编写程序、完成数据输入、修改、存储、调用查询等功能。并使用SQL 2000数据库形成数据,进行数据存储。本项目开发计划旨在明确规范开发过程,保证项目质量,统一小组成员对项目的理解,并对其开发工作提供指导;同时还作为项目通过评审的依据。并说明该软件开发项目的实现在技术上、经济上和社会因素上的可行性,评述为了合理地达到开发目标可供选择的各种可能实施方案,说明并论证所选定实施方案的理由。 1.1 技术可行性 根据用户提出的系统功能、性能及实现系统的各项约束条件,根据新系统目标,来衡量所需技术是否具备。本系统主要采用数据库管理方法,服务器选用MySQL Server 数据库,他是它是目前能处理所有中小型系统最方便的流行数据库,它能够处理大量数据,同时保持数据的完整性并提供许多高级管理功能。它的灵活性、安全性和易用性为数据库编程提供了良好的条件。硬件方面,该系统短小精悍对赢家没有太大要求,只要能够运行windows操作系统就可以很好的运行该软件。 1.2操作可行性 由系统分系可以看出本系统的开发在技术上具有可行性。首先系统对于服务器端和客户端所要求的软、硬件的最低配置现在大多数的用户用机都能达到。本系统对管理人员和用户没有任何的特殊要求,实际操作基本上以鼠标操作为主并辅以少量的键盘操作,操作方式很方便。因此该项目具有良好的易用性。用户只要具备简单的应用计算机的能力无论学历,无论背景,均可以使用本系统,用户界面上的按钮的功能明确,用户一看就可以了解怎么使用本系统,以及本系统能够完成的功能,因此本系统在操作上是可行的。 1.3经济可行性 估算新系统的成本效益分析,其中包括估计项目开发的成本,开发费用和今后的运行、维护费用,估计新系统将获得的效益,估算开发成本是否回高于项目预期的全部经费。并且,分析系统开发是否会对其它产品或利润带来一定影响。本系统作为一个课程设计,没有必要考虑维护费用,以及本系统可获得的效益等问题。 1.4法律及社会效益方面的可行性

职工信息管理系统java源代码

package exercise; import .*; class staffInfo 入职工信息★★★┃"); "┃★★★ 2.预览职工信息 ★★★┃"); "┃★★★ 3.查找职工信息 ★★★┃"); "┃★★★ 4.删除职工信息 ★★★┃"); "┃★★★ 5.读取已存数据★★★┃"); "┃★★★ 6.安全退出系统 ★★★┃"); "┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛"); " 请输入您需要的功能代号(1--6):"); choice=()); switch(choice){ case 1:creat(staffOne);break; case 2:output(staffOne);break; case 3:search(staffOne);break; case 4:delete(staffOne);break; case 5:read(staffOne);break; case 6:save(staffOne);break; } } while(choice!=0); } void creat(staffInfo staffOne[]) throws IOException { final BufferedReader buf=new BufferedReader(new InputStreamReader); "请输入职工信息(以0结束)\n"); "姓名:"); staffOne[i].name=(); "0")!=0) um=(); "性别:"); staffOne[i].sex=(); "年龄:"); staffOne[i].age=(); "学历:"); staffOne[i].record=(); "职位:"); staffOne[i].position=(); "工资:"); staffOne[i].wanges=(); "电话:");

简单的职工管理系统

简单的职工管理系统 #include #include #include #include typedef struct //,,,,?,,?,,,,壬(,,,,,,,,,,,,,,?,,,,,,,,?,,?,?,,,?,,,, { char name[20];//,,,, char sex[4]; //,,, int birthday; //,,,,,,,, int year; //,,,,,,,, char degree[8]; // ,,///,,,?,,?,?,,,,, char position[30]; //?,,///,,,?,,,?,?,,,,,,,?,, char address[30]; // ,,?///?,,,?,,,?,,,,,?,,,,,, char phone[15]; //,,///}employee; employee emp[80]; ///,,,,,,,,,,,,,"struct"? int menu_select() //,,,,,,, { char c; do{ printf("?,,,,,,,\n"); //,,,,,?? printf(" | 1. Input Records \n"); printf(" | 2. Display All Records |\n");

printf(" | 3. Sort |\n"); printf(" | 4. Insert a Record |\n"); printf(" | 5. Delete a Record |\n"); printf(" | 6. Query |\n"); printf(" | 7. Change |\n"); printf(" | 0. Quit |\n"); printf("Give your Choice(0-7):"); c=getchar(); //,,,,,, ? }while(c<'0'||c>'7'); return(c-'0'); //,,,,,,? } int Input(employee emp[],int n) //,,,,,,,,,,? { int i=0; char sign; do { printf("employee's name:\n"); //,,,,,,,, scanf("%s",&emp[i].name); ///?"employee",,,,?,,"emp",,,,,,,?,,,,,,,,,,,, printf("employee's sex:\n"); scanf("%s",&emp[i].sex); /// printf("employee's birthday:\n"); scanf("%d",&emp[i]. birthday);///

员工工资管理系统源代码样本

#include #include typedef struct { int basic;//基本工资 int position;//岗位工资 int subsidy;//津贴 int wages;//奖金 int sum;//总工资 }money; typedef struct { char num[20];//职工号 char name[20];//姓名 int age;//年龄 char sex[20];//性别 money salary;//工资 }employee; int Print_jinru();//账号密码输入 void Fscan_information();//”职工信息.txt”文件写入

void Print_staff();//全体员工 void Print_empl1(char x[51]);//按职工号查询 void Print_empl2(char s[51]);//按姓名查询 void Print_MainInterface();//主界面 void Print_Interface_1();//职工信息录入界面 void Print_Interface_2();//职工信息查询界面 void Print_Interface_3();//职工工资排序界面 void Print_Interface_4();//职工总工资 void Print_Interface_5();//文件读出 void qsort(int l,int r);//快速排序 void Print_delete(int t);//删除职工信息 void Print_Interface_2_1(int t);//职工信息修改界面 int fyanzheng(char s1[],char s2[]);//密码验证函数employee st[500];//记录职工信息的函数 int n;//职工总数 void main() { int x; employee em; printf("@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@\n");

简单的JAVA员工信息管理系统源码

// 项目目标:建立员工管理系统第一个版本。 // 实现图形用户界面的员工信息查询、增、删、改;与数据库建立,并将修改结果时时保存到数据库。 // 模块:1.GUI界面 2.数据库连接 3.查询 4.增、5删 6改(操作数据库) import java.sql.*; import java.awt.*; import java.awt.event.*; import javax.swing.*; public class EmpManageSys implements ActionListener { Connection con; Statement stmt; String sql; ResultSet rs; StringBuffer sb = new StringBuffer(); JTextField jtf2 = new JTextField("张飞",10); JTextField jtf3 = new JTextField(10); JTextField jtf4 = new JTextField(10); JTextField jtf7 = new JTextField(10); JTextField jtf5 = new JTextField(10); JTextField jtf6 = new JTextField(10); JTextField jtf8 = new JTextField(10); JTextField jtf9 = new JTextField(10); JTextArea jta10 = new JTextArea(50, 40); public void actionPerformed(ActionEvent e) { String str = e.getActionCommand(); if ("查询".equals(str)) { //if check the button of 查询,then go to method of searchEmp() searchEmp(); } else if ("增加".equals(str)) {

C员工工资管理系统源代码

C员工工资管理系统源代码

#include #include #include #include #include #include using namespace std; #define NULL 0 #define LEN sizeof(struct student) int const N=20; void Menu(); void Pass(); int n=0; //定义一个全局变量统计职工人数//——--------->定义一个职工信息的结构体 struct student { char name[N]; //用来存放姓名 char sex[N]; //用来存放性别 long id; //用来存放编号 float paid[3]; //用来存放工资 int total; //用来存放总工资 struct student *next;

}; //-------------->职工类 class Information { public: Information() ; //构造函数. ~Information() ; //析构函数. student *creat(); //建立链表 void output(student *head); //显示职工信息 int count(student *head); //定义函数count()统计职工总数student *insert(student*head); //指针函数*insert()用来添加职工信息. student *cancel(student *head,long id); //指针函数*cancel()用来删除职工信息. student *find(student *head,long id); //指针函数*find()用来查找职工信息. student *modify(student *head,long id); //指针函数*modife()用来修改职工的信息. void paixu(student *head); //定义paixu()函数将职工的总额从大到小排列并输出 void average(student *head); //定义职工工资平均值的函数void save(student *head); //保存文件信息

企业员工信息管理系统

本科毕业设计说明书 企业员工信息管理系统的设计与实现EMPLOYEE INFORMATION MANAGEMENT SYSTEM DESIGN AND IMPLEMENTATION 学院(部): 专业班级: 学生姓名: 指导教师: 2012年5月25日

企业员工信息管理系统的设计与实现 摘要 现今互联网发展越来越迅速,给人们的工作和生活带来了极大的便利和高效,信息化,电子化已经成为节约运营成本,提高工作效率的首选。因此在信息化科技飞速发展的今天,借助于电脑,通过员工信息管理系统管理各部门职工,能为企业人力资源的管理者提供人性化的服务。同时也能为企业的员工提供一定的方便。 本系统具有多方面特点:系统功能完备,用户使用方便简捷,人性化的用户界面,安全保密设置齐全,大大减少了操作人员和用户的工作负担,提高了企业员工信息管理的工作效率和企业的信息化的水平。 本论文从员工信息管理系统的初步调查开始,详细介绍员工信息管系统的需求分析和数据流程分析,并进行了系统总体结构设计、数据结构和数据库设计、输入输出设计等。 关键词:J2EE,Mysql,struts2,企业员工信息管理

EMPLOYEE INFORMATION MANAGEMENT SYSTEM DESIGN AND IMPLEMENTATION ABSTRACT Nowadays, the Internet development is fast, bringing people's work and life tremendous convenience with efficiently.Therefore, the rapid development of technology of information technology today, through the use of computers, employee information management system to manage the various departments and workers, to provide personalized service for corporate human resources managers.Also provides a convenience for the employees of the enterprise. This system has a various characteristics:The system function is complete, using conveniently, the customer interface humanization, the safety keeps secret a constitution well-found, reduced an operation the work of the personnel and customer burden consumedly.Raise the work efficiency of the business enterprise information management and the information-based level of the business enterprise. Papers from personnel management information system, the preliminary survey began detailed introduction of human resource management information system requirements analysis, and data flow analysis, and a system overall structure design, data structure and database design, input/output design, etc. KEYWORDS:J2EE, Mysql,struts2,Employee information management

C语言课设职工工资管理系统

C语言课设职工工资管 理系统 IMB standardization office【IMB 5AB- IMBK 08- IMB 2C】

一引言 C语言是CombinedLanguage(组合语言)的中英混合简称。是一种计算机程序设计语言。它既具有高级语言的特点,又具有汇编语言的特点。它可以作为工作系统设计语言,编写系统应用程序,也可以作为应用程序设计语言,编写不依赖计算机硬件的应用程序。设计一个程序的过程就是解决一个实际问题的过程,从解决实际问题的角度,我们可以这样来看:首先要了解这个问题的基本要求,即输入、输出、完成从输入到输出的要求是什么;在次我们必须捋清思路,逐一的解决问题的各个方面,即从输入开始入手,着重考虑如何从输入导出输出,在这个过程中,可确定所需的变量、数组、函数、结构体和文件等,然后确定处理过程。 本课题中主要应用了C语言中的数组、结构体、文件等关键技术。在C语言中,数组属于构造数据类型。一个数组可以分解为多个数组元素,这些数组元素可以是基本数据类型或是构造类型;结构体(struct)是由一系列具有相同类型或不同类型的数据构成的数据集合,也叫结构,在结构体中的变量,可以是相同、部分相同,或完全不同的数据类型,结构体只能描述一个对象的状态,不能描述一个对象的行为。文件是一种组织外部存储介质上的数据的数据类型。它具有两个特征:一是对一个数据集合可以用一个名字命名;二是保存在外部存储介质上,可以长期保存。 通过此次课设可以锻炼学生理论联系实际能力,提高学生适应实际、实践编程的能力,使对C语言系统编程有一个大致的了解,并达到如下目的:1.熟悉C语言程序的编辑、编译链接和运行的过程。2.熟练运用if语句和switch语句以及嵌套应用。3.学习并掌握C语言定义函数的基本方法、声明函数及调用函数的方法和过程。4.掌握文件的概念以及文件的定义方法,认识文件打开、关闭、读、写等文件基本操作函数。5.掌握结构体类型变量、数组的定义和使用。6.掌握数组的定义、引用以及输入输出的方法、通过字符数组存储字符串,进一步使用字符串。

职工信息管理系统设计(C语言)

程序设计课程设计报告 职工信息管理系统设计专业 计算机科学与技术 (软件工程(NIIT)) 学生姓名 班级 学号 指导教师 完成日期2011年7月

目录 1课程设计目的 (1) 2课程设计内容 (1) 3设计流程图 (1) 4源程序清单 (2) 5小结 (21)

。 职工信息管理系统的设计 1课程设计目的 1.加深对《C语言程序设计》课程知识的理解,掌握C语言应用程序的开发方法和步骤; 2.进一步掌握和利用C语言进行程序设计的能力; 3.进一步理解和运用结构化程序设计的思想和方法; 4.初步掌握开发一个小型实用系统的基本方法; 5.学会跳是一个较长程序的基本方法; 6.学会利用流程图火N-S图表示算法; 7.掌握书写长须设计开发文档的能力(书写课程设计报告) 2 课程设计内容 设计职工信息管理系统,要求职工心想包括职工号、姓名、性别、年龄、学历、工资、住址、电话等(职工号不重复)。设计一职工信息管理系统,使之能提供以下功能: (6)系统以菜单方式工作 (7)职工信息录入功能(职工信息用文件保存)--输入 (8)职工信息浏览功能--输出 (9)查询和排序功能(至少一种查询方式)--算法 (10)按工资查询 (11)按学历查询等 (12)职工信息删除、修改功能(任选项) 3设计流程图

. . .

。 (1)菜单函数 void menu() /*菜单函数*/ { printf(" ☆☆☆计算机科学与技术软件技术☆☆☆\n"); printf("\n"); printf(" ∮1010704422 杨婷婷∮\n"); printf("\n"); printf(" ******************职工信息管理****************\n"); printf(" 1.录入职工信息"); printf(" 2.浏览职工信息\n"); printf(" 3.查询职工信息"); printf(" 4.删除职工信息\n"); printf(" 5.添加职工信息"); printf(" 6.修改职工信息\n"); printf(" 7.退出\n"); printf(" ********************谢谢使用******************\n"); printf("\n"); printf("\n"); } (2)录入职工信息 void append() { if((fp=fopen("worker.xls","a"))==NULL) { printf("\n不能打开该文件!"); exit(); } printf("\n请输入添加职工信息(姓名、职工号、性别、年龄、学历、职位、工资、电话、地址)\n"); scanf("%s%s%s%s%s%s%s%s%s",https://www.sodocs.net/doc/5c4031004.html,,one.num,one.sex,one.age,one.record,one.positio n,one.wanges,one.tel,one.addr); fprintf(fp,"%-10s%-8s%-5s%-5s%-10s%-8s%-8s%-10s%-15s\n",https://www.sodocs.net/doc/5c4031004.html,,one.num,one.sex,o ne.age,one.record,one.position,one.wanges,one.tel,one.addr); fclose(fp); } (3)查询职工信息数据查找共分为职工号、姓名等方式查找 void search() { int l; printf("\t\t\t\t*姓名查找按:1*\n"); printf("\t\t\t\t*学历查找按:2*\n"); printf("\t\t\t\t*职工号查按:3*\n"); scanf("%d",&l); if(l>0&&l<4) {switch(l) {

工资管理系统的分析与设计[1]

工资管理系统的分析与设计 一、手工系统业务流程分析 工资是企业以货币形式支付给职工的劳动报酬,它是构成企业生产成本的组成部分。同时,根据企业现行的会计制度,按照工资总额的一定比例从成本中提取的职工福利费用于各种福利开支。工资核算是企业会计核算的一项重要组成部分,是一项重复、繁琐、细致的工作。工资核算正确与否,不仅关系到职工个人的利益,而且也影响产品成本的计算。 (一) 工资核算的内容及方法 工资核算包括工资结算、工资分配及福利费的计提等三方面的内容。工资结算是指应付给职工工资的计算,代扣款项的计算及实发工资的计算,工资分配是将工资分配给有关的成本项目或特定的资金来源负担,福利费是根据工资总额的一定比例计提。 (二) 工资结算凭证的编制 会计部门根据各部门提供的原始数据,计算出每个职工的应发工资,代扣款项和实发工资后,填制工资结算单。工资结算单通常一式三份,一份以“工资条”形式发给职工,以便查对,另一份留劳资部门备查,第三份经职工签收后,作为支付和结算的凭证。在编制工资结算单以后,为了发放工资和分配工资费用,须按工资发放部门和职工类别进行汇总,编制工资结算汇总表。 (三) 工资费用的分配 根据工资结算汇总表,按工资的用途和规定的资金来源进行分配,并按一定的比例计提福利费。工资分配的固定转账分录如下:

借:生产成本——基本生产成本 制造费用—一基本生产车间 生产成本——辅助生产成本 应付福利费 营业费用 在建工程 管理费用 贷:应付工资 按一定比例计提职工福利费的固定转账分录如下: 借:生产成本——基本生产成本 制造费用——基本生产车间 生产成本——辅助生产成本 应付福利费 营业费用 在建工程 管理费用 贷:应付福利费 (四) 工资管理的业务处理流程图(如图所示) 要求 根据手工系统的分析,工资管理系统应具备哪些功能? 根据工资管理的业务处理流程图,请绘制相应的数据流程图。

简单的职工信息管理系统报告

淮阴工学院 算法设计技能训练实习报告 题目:简单的职工管理系统 系(院): 计算机工程学院 专业:计算机科学与技术(微软合作)班级:计算机 1137 学号: 姓名 指导教师:周海岩 学年学期:2014 ~ 2015 学年第1 学期2014年12月31日

算法设计技能训练任务书 指导教师(签章):

年月日 摘要 在当今社会,互联网的发展,给人的工作和生活带来了极大的便利和高效,信息化、电子化已经成为节约运营成本提高工作效率的首选。随着各个公司的规模增大,有关信息管理工作所涉及的数据量越来越大,职工信息量也大大增加,利用传统的手工查询、登记、修改等方法的处理速度已经远远跟不上公司的需求。而且,人工方式来管理职工信息,存在着许多缺点,如:效率低、保密性差,对信息的查找、更新和维护不便。 计算机作为知识经济时代的产物,其强大的功能已为人们深刻认识。本文对职工管理系统进行设计,主要为了企业职工的信息进行集中管理和快捷查询。本职工信息管理系统包括新增、删除、查询、修改、排序等常用功能。整个系统用C++语言设计,用户可轻松管理企业员工信息。 关键词职工管理系统职工信息管理 C++ 数据结构

目录 1 引言 (5) 1.1 设计目的 (5) 1.2 设计意义 (5) 2 需求分析 (6) 2.1 设计题目描述 (6) 2.2 设计要求 (6) 2.3 实现提示 (6) 2.4 选做内容 (6) 2.5 软硬件运行环境及开发工具 (6) 3 课程设计报告内容 (6) 3.1 系统设计思想 (7) 3.2 系统概要设计 (7) 3.3 系统详细设计 (9) 3.3.1 结构体设计 (9) 3.3.2 主函数设计 (9) 3.3.3 查找算法设计 (11) 3.3.4 排序算法设计 (11) 3.4 运行与测试 (13) 总结 (16) 致谢 (17) 参考文献 (18) 附录程序代码 (19) 指导教师评语 (32) 图1 系统流程图 (7) 图2 系统功能结构图 (8) 表1 函数功能表 (8) 图3 模块调用关系图 (9) 图4 主函数程序流程图 (10) 图5 排序算法程序流程图 (13) 图6 主菜单选择界面 (13) 图7 新增并查询职工信息界面 (14) 图8 修改职工信息界面 (14) 图9 按工资排序职工信息显示图 (15) 图10 退出职工管理系统 (15)

企业员工管理系统方案

目录 子题目:企业员工管理系统 (1) 第一部分绪论 (3) 1.1 课题研究的目的和意义 (3) 1.1.1 课题研究的目的 (3) 1.1.2 课题研究的意义 (3) 第二部分需求分析 (4) 2.1现有系统介绍 (4) 2.2 系统功能需求分析 (4) 2.2.1 系统主要功能 (5) 2.3 业务流、数据流分析 (5) 2.3.1 业务流分析 (5) 第三部分系统概要设计 (6) 3.1 系统介绍 (6) 第四部分系统设计图 (7) 第五部分小结 (21)

第一部分绪论 1.1 课题研究的目的和意义 1.1.1 课题研究的目的 随着计算机技术的飞速发展,计算机在企业管理中应用的普及,利用计算机实现企业人事管理势在必行。对于大中型企业来说,利用计算机支持企业高效率完成劳动人事管理的日常事务,是适应现代企业制度要求、推动企业劳动人事管理走向科学化、规化的必要条件;而人事管理是一项琐碎、复杂而又十分细致的工作,员工资料的录入、添加、修改、删除工作量很大,一般不允许出错,如果实行手工操作,须手工填制大量的表格,这就会耗费工作人员大量的时间和精力,计算机进行管理,不仅能够保证员工资料的准确无误、快速输出,而且还可以利用计算机对有关员工的各种信息进行统计,同时计算机管理有着手工管理所无法比拟的优点.例如:检索迅速、查找方便、可靠性高、存储量大、性好、寿命长、成本低等。这些优点能够极提高人事管理的效率,也是企业的科学化、正规化管理,与世界接轨的重要条件。 1.1.2 课题研究的意义 伴随企业自身人力资源的日益庞大、复杂程度逐渐增强,以前简单的几段文字、几报表的人机作坊再也无法适应如今企业的人事管理了,取代的是运用各种领域的知识,结合计算机科学而开发的人事信息管理系统,科学合理的来管理企业人事信息档案及扩充的人力资源管理系统。 企业人事管理系统算是比较成熟的管理系统,被大中小企业所普通运用。它用计算机取代数据资料的手工处理,便于数据共享,方便企业决策者了解广大员工信息时调整人员,有利于企业员工对自己的各项数据信息的了解。企业人事管理系统大大降低了工作强度,提高管理部门日常工作的效率和决策服务水平的科学性,实现管理工作的科学性、规化。

数据库课程设计员工信息管理系统.doc

课程设计任务书

设计名称:员工信息管理系统日期:2009年5月3日设计内容: 1、员工信息添加 2、员工信息修改 3、员工信息删除 4、员工信息查询(多种方式) 5、员工考勤信息添加 6、员工考勤信息修改 7、员工考勤信息删除 8、员工考勤信息查询 9、用户注册 10、SQL基本表建立 11、SQL权限、索引、触发器、函数的创建 12、ODBC连接 设计目的与要求: 1)加深对数据库系统原理、软件工程、程序设计语言的理论知识的理解和应用水平。 2)通过设计实际的数据库系统应用课题,进一步熟悉数据库管理系统的操作技术,提高动手能力,提高分析问题和解决问题的能力。 3)通过设计,掌握数据库应用系统综合开发的方法与技能。 设计环境或器材、原理与说明: VB 6.0 SQL SERVER2000 设计过程(步骤)或程序代码: 1 需求分析 1.1系统需求分析 在人才过剩的今天,企业对于有用人才的需求逐步加大,企业内部的人事变动和部门规划也开始加速,传统的人事档案已经不能满足各个企业的人员流动速

度,迫使人们起用新的管理方法来管理员工的相关信息。科学技术日新月异的进步,让人类生活发生了巨大的变化,计算机技术的飞速发展,使各行各业在计算机技术应用方面得到了广泛的普及和使用。信息化时代的到来成为不可抗拒的潮流,人类文明正在进入一个崭新的时代。因此,员工管理系统也以方便、快捷、费用低、绿色环保的优点正慢慢地进入各个行业和领域,将传统的员工管理方式彻底的解脱出来,提高效率,减轻工人人员以往繁忙的工作,加速信息的更新速度,使企业管理层第一时间了解到员工的信息,从而进一步的进行对员工的调配。 功能需求详细说明: —增加— 增加员工的基本信息、考勤信息 —编辑— 用户可以对员工信息、考勤信息进行删除 用户可以对员工的姓名、编号等员工基本信息进行修改 用户可以对员工的出勤天数、请假天数等考勤信息进行修改 —查询— 用户可以根据姓名、编号,准确的查到要找的员工,也可以选择部门,查看选中的部门的所有员工。 1.2可行性分析 本次课程设计题目:“员工信息管理系统”,主要目的是编制一个登陆系统,连接数据库系统,用以实现员工个人信息与考勤信息的管理。同时对整个系统的分析、设计过程给出一个完整的论证。 由于本系统管理的对象简单,且每个数据内容之间都具有关联性,涉及过程并不是很复杂。因此,比较适合于采用数据库管理。在技术难度方面,由于有指导老师的指导和相关参考文献,特别是网上和图书馆资料,特别是参考其它程序的功能,因此完全可以实现。 2数据库的概念设计 实体设计: 员工(员工编号,姓名,性别,出生日期,籍贯,专业,学历编号,职称编号,职务编号,部门编号,参加工作时间,进入公司时间,员工备注,政治面貌,员工技术特长,毕业学校,用工性质,工资等级,合同期限)

员工管理系统项目背景

员工管理系统项目背景报 告 文库中有员工管理系统ppt演示、员工管理系统项目背景报告、员工管理系统需求分析报告、员工管理系统设计报告、员工管理系统实现文档、员工管理系统测试报告一套项目开发文档,适用于毕业设计论文参考 项目开发人员:XXX 201X年XX 月XX 日

目录 一、社会背景 0 二、公司背景 (3) 三、系统背景 (3) 四、技术背景 (5) 1. struts、hibernate、spring三大框架 (5) 2. jQuery EasyUI技术 (6)

一、社会背景 随着计算机技术的不断发展,计算机作为知识经济时代的产物,已被广泛应用于社会各个行业和领域。随着我国国企改革的深入和社会主义市场经济的日趋繁荣,导致各企业间的竞争日益激烈,迫使企业采取先进的计算机硬件设备以及高质量的辅助软件来管理企业的各项运作,以提高本企业的劳动生产率以及人员效率。 人力资源管理系统的发展历史可以追溯到2 0 世纪6 0 年代末期。由于当时计算机技术已经进入实用阶段,同时大型企业用手工来计算和发放薪资既费时费力又非常容易出差错,为了解决这个矛盾,第一代的人力资源管理系统应运而生。当时由于技术条件和需求的限制用户非常少,而且那种系统充其量也只不过是一种自动计算薪资的工具,既不包含非财务的信息,也不包含薪资的历史信息,几乎没有报表生成功能和薪资数据分析功能。但是,它的出现为人力资源的管理,展示了美好的前景,即用计算机的高速度和自动化来代替手工的巨大工作量,用计算机的高准确性来避免手工的错误和误差,使大规模集中处理大型企业的薪资成为可能。 第二代的人力资源管理系统出现于20 世纪70 年代末。由于计算机技术的飞速发展,无论是计算机的普及性,还是计算机系统工具和数据库技术的发展,都为人力资源管理系统的阶段发展提供了可能。第二代人力资源管理系统基本上解决了第一代系统的主要缺陷,对非财务的人力资源信息和薪资的历史信息都给予了考虑,其报表生成和薪资数据分析功能也都有了较大的改善。但这一代的系统主要是由计算机专业人员开发研制的,未能系统地考虑人力资源的需求和理念,而且其非财务的人力资源信息也不够系统和全面。人力资源管理系统的革命性变革出现在2 0 世纪9 0 年代末。由于市场竞争的需要,如何吸引和留住人才,激发员工的创造性、工作责任感和工作热情已成为关系企业兴衰的重要因素,人才已经成为企业最重要的资产之一。“公

相关主题