c语言做的工资管理系统

c语言做的工资管理系统

ID:26362067

大小:1.67 MB

页数:43页

时间:2018-11-26

c语言做的工资管理系统_第1页
c语言做的工资管理系统_第2页
c语言做的工资管理系统_第3页
c语言做的工资管理系统_第4页
c语言做的工资管理系统_第5页
资源描述:

《c语言做的工资管理系统》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、C语言课程设计报告-工资管理系统一.系统功能1,输入记录模块主要完成将数据存入数组中的工作。记录可以从以二进制形式存储的数据文件中读入,也可以从键盘逐个输入记录。2,查询记录模块主要完成在数组中查找满足相关条件的记录。在查询记录模块中,用户可以按照职工编号或者姓名在数组中进行查找。3,更新记录模块主要完成对记录的维护。在此工资管理系统中,实现对记录的修改、删除、插入、排序操作。4,统计记录模块主要完成对公司员工的工资在各等级的人数统计。5,输出记录模块主要完成两个任务:第一,它实现对记录的存盘操作,将数组中各元素的存储的记录信息写入数据文件中。第二,

2、它实现将数组中存储的记录信息以表格的形式在屏幕上打印出来。6,从文件读入功能模块主要是将数据存放在数组中。该模块从数据文件中读取所有记录,通过多次调用fread()文件函数,每次操作都是从文件中读取一条工资记录信息存入数组中的操作.7,从键盘输入功能模块主要实现记录从键盘上输入Add函数实现。首先把文件中存在的记录全部显示出来,而后从键盘接收多次输入记录,如果职工编号重复则提醒重新输入,输入的记录暂保存到结构体数组中,输入0回到主菜单。8,查询模块主要实现在结构体数组中按职工编号或姓名查找满足条件的记录的功能,通过Qur()函数来实现。提供两种方式查

3、询:1为按照编号来查询,2按照姓名来查询;如找到查询内容则输出记录值,找不到则提示无此项记录。9,更新记录模块主要是实现对记录的修改、删除、插入、排序操作。所有这些操作都在数组中完成。修改记录操作需要对数组中目标元素的数据域中的值进行修改,分三步完成:首先显示所有的记录,然后输入要修改的职工编号,调用Locate()函数定位该职工的编号记录,第三步,若找到该记录,则修改职工编号之外的各字段的值。10,删除记录操作完成删除制定的职工编号或者姓名的记录。也分三步完成:首先显示所有的记录,而后输入要删除的职工编号或者姓名,输入后调用Locate()函数定位

4、该职工的记录,第三步,若找到该记录,则从该记录所在元素的后续元素起,依次向前移一个元素位置,元素个数减1。11,插入记录操作完成在指定职工编号的随后位置插入新的记录。首先,它要求用户输入某个员工的职工编号,新的记录将插入在该记录之后;然后提示用户输入一条新的记录信息。12,排序操作主要实现按照实发工资降序排序。分两步,首先输出所有的记录,而后按照冒泡排序法的思想进行排序,输出排序的结果。13,统计记录模块的实现比较简单,首先输出所有的记录,而后根据实发工资进行判断,完成工资在各个等级的人数统计。14,输出至文件模块是把保存在数组中的记录保存到文件中。

5、在Save函数中实现,当把记录输入至文件时,调用fwrite()函数,即将数组元素中各字段的值都写入文件中。15,输出至屏幕模块是把保存在数组中的记录显示到屏幕上,调用Disp()函数,以表格的形式显示所有的记录。二.总体设计1、数据结构的设计定义结构体emolyee,用于存放职工的基本信息和工资信息。typedefstructempoyee{charnum[10];保存职工编号charname[15];保存职工姓名intjbgz;保存职工基本工资intjj;保存职工奖金intkk;保存职工扣款intyfgz;保存职工应发工资intsk;保存职工税款

6、intsfgz;保存职工实发工资}ZGGZ;定义Saveflag全局变量,用于存放结构体数组是否修改过。1为改过,2未改过2、函数设计及功能描述1,intAdd(ZGGZTP[],intn)函数用于在数组tp中增加工资记录元素,并返回数组中的当前记录数i。若在刚进入工资管理系统时数据文件为空,则将从数组的头部开始增加记录;否则,将记录添加在数组的尾部2,voidBoFang(ints);通过传入不同的声音文件编号来播放不同的XP的系统声音网上找的模板#include#include#pragmacomme

7、nt(lib,"Winmm.lib")voidmain(){PlaySound(TEXT("C:\WINDOWS\Media\WindowsXP启动.wav"),NULL,SND_FILENAME

8、SND_SYNC);}3,intDel(ZGGZtp[],intn);函数用于先在数组tp中找到满足条件的记录,然后删除该记录,并返回数组中的当前记录数支持选择按照编号查找和按照姓名查找4,voidDisp(ZGGZtp[],intn);先调用PrintHeader()显示表头,再用for循环调用PrintData来显示结构体数组中每个记录的信息5,

9、voidFunTitle(intm);功能是截获用户在主菜单所做的选择,并在进入功能前提示用户当前所选择的功

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。