基于C语言的工资管理系统实现与操作

需积分: 9 2 下载量 29 浏览量 更新于2024-07-21 1 收藏 5.81MB DOC 举报
工资管理系统是一个基于C语言编写的程序框架,用于管理员工的工资数据。该系统的核心结构定义了一个名为`worker`的结构体,它包含了工人的基本信息以及每月的工资情况。结构体包括以下几个字段: 1. `int number`: 工人的工号,用于唯一标识每个员工。 2. `char name[15]`: 工人的姓名,存储每个员工的名字。 3. `int salary[MONTH_NUM]`: 一个数组,表示每个员工在一年中的5个月份(最多)的工资,通过MONTH_NUM常量设定为5。 4. `int sum`: 每个员工的总工资,用于计算工资总额。 5. `float average`: 每个员工的平均工资,用于评估其薪资水平。 此外,还定义了一些辅助函数来处理数据操作: - `Menu()`: 主菜单,可能包含选项如添加、删除、修改、查询工资等。 - `Ascending()` 和 `Descending()`: 升序和降序比较函数,用于排序操作。 - `IntSwap()`、`CharSwap()` 和 `FloatSwap()`: 数字和字符类型的交换函数,用于数据类型间的转换或交换。 - `STU *AppendNode()`, `STU *DeleteNode()`, `STU *ModifyNode()`, 和 `STU *SearchNode()`: 分别实现插入、删除、修改和查找员工节点的操作。 - `STU *Appendsalary()`, `Totalsalary()`, `Printsalary()`, `Deletesalary()`, `Modifysalary()`: 功能分别为追加工资、计算总工资、打印工资、删除工资和修改工资的数据操作。 - `Sortsalary()`: 对工资数组进行排序,接受一个比较函数作为参数,根据指定的比较规则执行。 - `Searchsalary()`: 搜索特定月份的工资。 - `DeleteMemory()`: 清理内存,释放已分配的结构体内存。 这个工资管理系统利用了C语言的基本数据结构和算法,实现了对员工工资的管理功能,提供了一种实用的方法来维护和分析员工的薪酬数据。通过这些函数,管理员可以方便地添加、修改、查找和统计工资信息,有助于人力资源部门进行工资发放、税务计算等任务。同时,排序和搜索功能确保了数据的有序性和效率。
2021-07-09 上传
工资管理系统主要用于企业员工的工资核算,实现对人员信息、薪资福利、员工社保信息的维护和查询,并能迅速准确地完成考勤的分类汇总,生成工资报表。系统主要功能如下: (1)人员信息管理:企业员工信息(包括员工基本信息、教育经历、个人简历、岗位变更、离职登记、离退休信息等)的维护和查询(包括精确查询与模糊查询)。查询方式包括单条件查询与组合查询。修改时不允许修改员工编号。 提示:员工基本信息表上某一行的“职称”字段更新后,可以通过触发器自动调整职工工资,或通过事务实现。 (2)考勤管理:管理员工的出勤情况(包括加班、请假、休假等),并提供查询和分类统 计功能。可根据日期、员工编号查询员工出勤情况:也可以按月份、季度、部门、姓名等统计员工出勤情况。 (3)薪资福利管理:管理员工的薪资和福利(包括当月工资、个人所得税、发放工资历 史、员工奖励、员工惩罚等)。 提示:通过存储过程实现当月工资计算和工资发放功能。 计算当月工资时,月工资信息表中的“奖金”、“罚款”字段,是通过计算员工奖励表的奖励金额总和、员工惩罚表的惩罚金额总和得到的。扣款合计、应发合计计算公式可参考实际业务。 个人所得税率是由国家相应法律法规规定的,除非条款变更,否则所得税的计算方法不发生改变。 工资发放时,将工资发放的记录转入工资发放历史记录中,同时将已经发放工资的员工从当月工资管理表中删除。 工资发放历史的作用是查询员工工资的历史记录,查询条件包括月份、职工编号等。 提示:为了保护员工隐私,应设置密码保护,使员工只能查询自己的过往历史信息,同时工资条的输出也应设置专门的权限,不能随意进行。下面的社会保障管理同此处理。 (4)社会保障管理:管理员工的社保信息(包括单位参保信息、养老保险、医疗保险、住房公积金等),生成社会保险台账。 社保基金由企业和员工按照一定的比率共同支付。其中支付的基数和比率根据企业的情况而有所不同,一般基数会和员工工资挂钩,可参考实际业务进行计算。 社会保险台账用于查询企业员工各种社会保险的支付历史和支付金额,其数据根据设定的企业支付比率、个人支付比率及“薪资福利管理”中工资发放时指定的信息自动计算生成。 (5)系统管理:包括操作员管理、参数设置、权限设置、更改密码等。
2011-04-01 上传
这是一款适用于中小企业的工资管理软件,具有以下特点: 一、完全免费,让你没有购买、注册之类的烦恼; 二、提供了三十多项实用功能,可以与收费的商业软件相媲美; 二、用你最熟悉的EXCEL编写,所见即所得,直接使用,无需学习; 三、完全开放源代码,你可以看到所有代码,并可以跟踪代码的执行,让你消除对宏病毒的担心; 四、数据与代码在一个文档中,不使用额外的数据库,不需要安装,即拷即用,真正做到绿色版; 五、持续更新(因为有相关单位在使用),并提供数据升级功能,让你可以放心地过渡到最新版本。 六、适用于包括Excel2007在内的各个版本的excel。 特色功能: 一、隐藏无发生额的数据列(行),冻结标题行; 二、提供导出银行代发工资的数据,可自定义银行代发工资的数据格式,方便所有银行代发工资; 三、提供按部门打印工资表,工资条、个人工资单,并可以按部门生成汇总表,提供带汇总的综合查询, 方便查询和打印。 四、允许一次删除多名职工,省却逐个删除的烦恼。 五、提供导出单个或全部工作表的功能,方便数据分发和保存。 六、可以灵活地自定义个税计算公式,个税计算更加方便实用,允许设置住房公积金扣除上限、 调整个税扣除基数。 七、提供按月统一计算个税功能,并提供计算详尽的个税计算过程核对表, 一月多次发放工资再无个税扣除烦恼。 八、新增强大的数据导入功能,既可以导入职工姓名、帐号等基础数据,也可以导入代扣水电费等具体数据, 非常方便实用。 温馨提示: 一、在excel97-2003版中使用时,请先将excel的宏安全性调整为“中”,然后在打开本文档时, 点“启用宏”。(不会设置?没关系,直接点那个“设置宏.reg”就可以了,该文件可以删除) 二、在当前月多次发放工资的情况下,用当月的第1个工资表作为下月工资的基础数据。 三、在将工作表数据复制到附加表后,最好去除A1单元格的批注, 如果正好该附加表的名称符合 工资表的命名规范时,有可能会导致系统会误认为该表是工资表而导致数据被锁定等问题。 四、在excel2007中使用: 1、强烈推荐将文档格式另存为xlsm格式,可减少文档大小一半左右(当然,还可以转换为xls格式) 2、每次打开文档时会在菜单行下,有个“安全提示”行,点“选项”后,启用此内容, 才可以执行本程序的代码。 3、由于excel2007的菜单改为Ribbon,因此本程序的菜单被放在“加载项”下面。 4、本程序在excel2007下完全可以正常使用,但也有些微小的差异: (1)由于代码优化和支持多核处理器,保存所需的时间,大大减少。 (2)“导出全部工作表”所需时间有所增加。 5、由于目前Ribbon技术是1.0版本,还不能实现可视化编程,必须手工修改xml参数, 同时为了兼顾广大非excel2007用户,因此暂不推出excel2007专用版。。