职工工资信息管理系统文档格式.docx
- 文档编号:15895151
- 上传时间:2022-11-16
- 格式:DOCX
- 页数:34
- 大小:23.90KB
职工工资信息管理系统文档格式.docx
《职工工资信息管理系统文档格式.docx》由会员分享,可在线阅读,更多相关《职工工资信息管理系统文档格式.docx(34页珍藏版)》请在冰豆网上搜索。
3)按姓名查找;
4)按部门查找;
5)显示所有的学生信息;
6)返回主菜单。
三、查找函数:
工资卡和身份证号码具有唯一性,所以查找这两个数据的时候只需要找到该员工的信息就可以结束该查找模块,并将数据显示出来。
姓名和部门的人数不一定是唯一的,所以当找到了符合需要的信息之后该该模块还要继续往下查找,直到将链表的所有数据全都查询为止。
显示全部就是调用输出模块将所有的数据全部显示出来。
查找是通过定义一个字符串,用来存储需要查找的数据,然后通过while循环,往下查找并结合if的选择性将需要查找的数据找到并显示出来。
四、添加函数:
1)定义两个字符型的数组,用来存储员工的工资卡号和身份证号码;
2)查找输入员工的工资卡号,如果该生存在则不能添加;
3)如果没有该学号,输入身份证号码;
4)查找整个链表的数据,如果存在相同的身份证号码,则提示该身份证号码存在,需要重新输入,当连续三次输入存在的身份证号码时,则不能再次输入,并返回主菜单;
5)当身份证号码不存在,则开辟一个内存空间,用来存储该员工的信息;
6)将该空间插入到链表的第一个位置。
五、修改函数:
1)定义一个字符型的数组,用来存储员工工资卡号;
2)查找该员工,如果找不到则提示没有该员工的信息,并返回主菜单;
3)找到该员工,显示该员工的信息,并在某些可以改动的信息上面标记了数字,并要求用户选择需要修改的项目,如果需要改卡号和身份证号码,则不能输入已经存在,否则不能改动,其他的信息可任意改动,每次修改都会将修改之后该员工的信息显示出来;
4)选择0停止修改并返回主菜单。
六、删除函数:
1)定义一个字符型的数组,用来存储学生学号;
2)查找输入的学生的学号,如果找到了该学号,显示该员工的信息;
3)提示用户是否需要删除,删除输入1,输入其他的数字返回主菜单。
七、排序目录:
1)按员工工号排序;
2)按员工姓名排序;
3)按应发工资排序;
4)按实发工资排序;
5)返回主菜单。
八、排序函数:
1)进入排序程序,先开辟一个内存空间,建立一个辅助结点phead,从head链表中卸下头结点,插入到phead中;
2)将无序链表head变换为有序链表phead,将head指向第一个结点,回收phead。
九、统计目录:
1)统计所有员工;
2)统计所有员工;
3)返回主菜单。
十、统计函数:
1)在输入信息和修改信息的时候用到了统计应发工资和实发工资;
2)定义计算公积金和税金的函数;
3)统计所有员工,将所有的员工的各种数据都统计出来;
4)俺部门统计,用while和if语句将同一个部门的数据统计出来。
十一、导入和保存文件程序:
1)定义一个字符型的数组,用来存储文件的地址;
2)导入信息时将开辟一个内存的空间,用来存储一个员工的信息,通过while语句控制,直到将所有的员工都录入进去,关闭文件!
3)保存信息,将链表中的数据保存到输入的地址,关闭文件。
2.详细设计
#include<
stdio.h>
string.h>
malloc.h>
stdlib.h>
structworker
{
charno[10];
charsfz[18];
charname[9];
charbumen[6];
floatfee[8];
structworker*next;
};
floatshuijin(structworker*p)
if(p->
fee[3]<
=500)
returnp->
fee[3]*0.05-0;
elseif(p->
=2000)
fee[3]*0.1-25;
=5000)
fee[3]*0.15-125;
=20000)
fee[3]*0.2-375;
=40000)
fee[3]*0.25-1375;
=60000)
fee[3]*0.30-3375;
=80000)
fee[3]*0.35-6375;
=100000)
fee[3]*0.40-10375;
else
fee[3]*0.45-15375;
}
floatgongjijin(structworker*p)
=1500)
return0;
=3000)
fee[3]*0.05;
=4500)
fee[3]*0.1;
fee[3]*0.15;
voiddisplay(structworker*p)
printf("
┏━━━━┳━━━━━┳━━━┳━━┳━━━━┳━━━━┳━━━━┳━━━━┳━━━━┳━━━━┳━━━━┳━━━━┓\n"
);
┃卡号┃身份证号码┃姓名┃部门┃基本工资┃职务工资┃各种补助┃应发工资┃水电费┃公积金┃税金┃实发工资┃\n"
┣━━━━╋━━━━━╋━━━╋━━╋━━━━╋━━━━╋━━━━╋━━━━╋━━━━╋━━━━╋━━━━╋━━━━┫\n"
┃%-8s┃%-10s┃%-6s┃%-4s┃%8.2f┃%8.2f┃%8.2f┃%8.2f┃%8.2f┃%8.2f┃%8.2f┃%8.2f┃\n"
p->
no,p->
sfz,p->
name,p->
bumen,p->
fee[0],p->
fee[1],p->
fee[2],p->
fee[3],p->
fee[4],p->
fee[5],p->
fee[6],p->
fee[7]);
┗━━━━┻━━━━━┻━━━┻━━┻━━━━┻━━━━┻━━━━┻━━━━┻━━━━┻━━━━┻━━━━┻━━━━┛\n"
intA(structworker*head)
structworker*p=head;
请输入员工工资卡卡号:
"
scanf("
%s"
no);
while(p!
=NULL)
{
if(strcmp(no,p->
no)==0)
{
display(p);
printf("
\n\n按回车键返回查找菜单!
getchar();
getchar();
\n\n"
return1;
}
p=p->
next;
}
该员工未找到!
\n"
getchar();
return0;
intB(structworker*head)
请输入身份证号码:
sfz);
if(strcmp(sfz,p->
sfz)==0)
voidC(structworker*head)
inti=0;
请输入姓名:
name);
if(strcmp(name,p->
name)==0)
i=1;
if(i==0)
printf("
voidD(structworker*head)
charbm[6];
请输入部门:
bm);
=NU
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 职工工资 信息 管理 系统
![提示](https://static.bdocx.com/images/bang_tan.gif)