工资管理系统实验报告Word格式.docx
- 文档编号:16936813
- 上传时间:2022-11-27
- 格式:DOCX
- 页数:13
- 大小:264.05KB
工资管理系统实验报告Word格式.docx
《工资管理系统实验报告Word格式.docx》由会员分享,可在线阅读,更多相关《工资管理系统实验报告Word格式.docx(13页珍藏版)》请在冰豆网上搜索。
主要完成对所有职工按实发工资进行的升序或降序排列。
8、保存模块。
主要完成对已经输入和修改或删除的保存文件。
9、退出。
退出系统
工资管理系统
分类统计
保存模块
用户登录
删除模块
排序模块
查询模块
插入模块
修改模块
输出模块
输入模块
降序排序
生序排序
姓名查询
编号查询
修改扣款
修改基本工资
修改姓名
修改编号
一、总体设计
1、功能模块设计
(1)主函数程序流程图
main()
降序
升序
保存文件
排序
删除职工信息
按职工姓名
按职工编号
查询职工信息
插入职工信息
编号
姓名
性别
基本工资
扣款
修改职工信息
输出职工信息
制作工资表
菜单
Case8
Case1
Case7
Case6
Case5
Case4
Case3
Case2
switch
(2)
高于10000
8000~10000
3500~8000
低于3500
结束
退出
Case0
(2)输入模块
跳出
开始
输入职工的信息
P->
next
next!
=NULL
While()是否继续输入
(3)输出模块
开始
结束输出
P是否为空
是
While()
否
P=P->
(4)修改模块
P是否NULL
输入要修改的职工编号k
查找有无该职工
无
有
不修改
是否修改
继续修改
开始
(5)插入模块
定义变量,申请内存
查找插入之后的编号
不存在
该编号之后的节点后移一位
输入要插入的职工信息
(6)
输出
定义变量
选择语句
编号查询
姓名查询
(7)
输入要删除的编号
查找该编号
是否继续删除
没有找到
将前一节点指针指向当前节点的下一节点
释放节点
(8)
选择
Case1
Case2
(9)计算税金
{(基本工资)--(扣款)}*税率-速扣数=个人所得税。
以总工资5105元为例,三险一金105为例 {5105-105-3500}X0.03-0=45元
2011年9月1日起调整后的7级超额累进税率
全月应纳税所得额税率速算扣除数(元)
全月应纳税额不超过1500元3%0
全月应纳税额超过1500元至4500元10%105
全月应纳税额超过4500元至9000元20%555
全月应纳税额超过9000元至35000元25%1005
全月应纳税额超过35000元至55000元30%2755
全月应纳税额超过55000元至80000元35%5505
全月应纳税额超过80000元45%13505
三、数据结构设计
职工信息信息结构体
structworker//定义数据结构//
{
charno[11];
//编号//
charname[15];
//姓名//
charxb[10];
//性别//
doublejbgz;
//基本工资//
doublekoukuan;
//扣款//
doubleyfgz;
//应发工资//
doubleshuijin;
//税金//
doublesfgz;
//实发工资//
charpost[10];
//职位//
structworker*next;
};
typedefstructworkerSTU;
//结构体类型名///
四、函数功能描述
intmenu_select(void);
//主菜单//
STU*append(STU*head);
//添加记录//
STU*appendNode(STU*head);
voidlist(STU*head);
//显示所有数据//
STU*modify(STU*head);
//修改职工记录//
STU*modifyNode(STU*head);
void*search(STU*head);
//查询职工信息//
void*no(STU*head);
//编号查询//
void*name(STU*head);
//姓名查询//
STU*dele(STU*head);
//删除职工信息//
STU*deleNode(STU*head,chark[11]);
void*save(STU*head);
//保存文件//
STU*insert(STU*head);
//插入职工信息//
STU*tax(STU*head);
//计算税金//
STU*calc(STU*head);
//计算应发工资//
STU*total(STU*head);
//计算实发工资//
STU*sort(STU*head);
//对职工信息进行排序//
STU*insort(STU*head);
//升序函数//
STU*desort(STU*head);
//降序函数//
void*index(STU*head);
//分类统计//
void*index1(STU*head);
void*index2(STU*head);
void*index3(STU*head);
void*index4(STU*head);
intuser_ID();
//登录账户函数//
STU表示结构体类型名
Head表示链表的头结点
5、源代码分析
6、⑴程序预处理
包括加载头文件,定义结构体、常量和变量,并对它们进行初始化工作。
#include<
stdio.h>
stdlib.h>
conio.h>
string.h>
memory.h>
windows.h>
⑵主函数main()
voidmain()
{intch;
chara;
STU*head=NULL;
system("
color02"
);
//背景色/前景色的设置(0黑色、1蓝色、2绿色、3浅绿色、4红色、5紫色、6黄色、7白色、8灰色、9淡紫色、A淡绿色、B淡浅绿色、C淡红色、D淡紫色、E淡黄色、F亮白色)//
a=getchar();
while(!
a);
cls"
user_ID();
while
(1)
{
ch=menu_select();
switch(ch)
case1:
head=append(head);
break;
//制作工资表//
case2:
list(head);
//输出所有的职工的信息//
case3:
head=modify(head);
//修改职工信息//
case4:
head=insert(head);
case5:
search(head);
case6:
head=dele(head);
//删除职工信息//
case7:
head=sort(head);
case8:
save(head);
//保存文件//
case9:
index(head);
case0:
exit(0);
//退出//
default:
printf("
Inputerror!
\n"
break;
}
}六、运行结果
1、主界面
成绩管理系统主菜单
2、输入学生记录
3、显示记录
4、修改记录
5、插入记录
6、删除记录
7、对职工信息排序
(1)升序
(2)降序
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 工资管理 系统 实验 报告