- 1、本文档共60页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
职工工资管理系统C语言作业
苏州科技大学二○一二~二○一三学年第一学期电子与信息工程系课程设计报告书课程名称:职工工资信息管理系统班级:通信1211 学号: 1220119***姓名:柯泥·波特指导教师:任**教授二○一三年一月目录一、问题分析……………………………………………………………3二、设计概要……………………………………………………………4三、系统功能详细设计…………………………………………………5四、调试分析…………………………………………………………19五、总结………………………………………………………………19附录:附录1:代码……………………………………………………………20附录2:操作手册………………………………………………………53附录3:在 MS-DOS下的调试………………………………………54附录4:参考书籍与平台………………………………………………58问题分析1.1 设计题目《职工工资信息管理系统》1.2 需求分析 1.2.1 工资会由多个部分构成,如何实现对工资组成的自动管理? 1.2.2一个单位会有多个部门,如何实现对部门,全体或个人的条件查询? 1.2.3每个人的工资每月都不一样,如何实现对三维数据的管理?人,工资,时间。 1.2.4如何实现对工资的录入,查找,排序,存储打印等基本操作? 1.2.5工资属于个人隐私,如何防止未授权非法访问? 1.2.6如何快速熟悉工资管理系统? 1.2.7如何建立一套完善的报错系统用于系统的维护和保证数据的完整与安全?1.3功能1.3.1信息的录入、增添、修改和删除。 对某一员工工资信息的一次性完整录入,完整删除。对某一员工部分信息的录入、增添、修改和删除。1.3.2信息的查找、筛选与显示。对某个员工工资信息的显示。[按员工号查找和按姓名查找]高级查找功能。对所有有效数据或所查找到的信息进行排序,求和自动报表。按员工号自动排序整理链表。1.3.3加载,保存。 加载硬盘上的信息。 将信息存储。对已有文件的归零操作。1.3.3其它 友善的操作界面。 错误提示。 授权操作加密,文件加密。操作帮助。 员工报错服务。 按用户性质分级授权服务。二、设计概要 2.1 数据结构考虑到每个员工与员工的基础资料之间是平行的关系,而每个员工的工资之间是既平行又与其他员工的工资独立的关系。所以本系统的基础数据结构为:动态链表嵌套动态链表。第一层动态链表:姓名,员工号,性别,工资信息的链表首地址,下一位员工信息的链表地址。第二层动态链表:记录,年,月,部门,职务,税后工资,基本工资,奖金,税前工资,最高税率,是否发放,下一条工资信息的地址。报错文件的基本数据类型:报错的员工号,报错留言,下一条报错信息的地址。 2.2数据储存形态考虑到信息安全问题与方便数据化读取与存储和避免数据转化之间的损失,本系统采用二进制流文件储存形式。 2.3分级授权禁止非法访问为了最大化的对信息安全进行保护,本系统采用按密码分级授权。在授权模块遭到损坏之后您将无法使用任何功能,只有联系管理员使用初始化密码重新设置。在密码服务正常的情况下,输入不同的密码将得到不同的权限。普通用户权限:按员工号查询工资,按姓名查询工资,工资报错。管理员权限:按员工号查询工资,按姓名查询工资,查看工资报错的信息与清零,创建新员工,登记工资,修改工资,删除工资,删除员工,信息筛选,自动生成已排序报表,整理链表,修改密码。2.4对于输入流的管理对于输入流中的信息不容忽视,某些函数接收信息之后会清除掉或转化Enter信息,某些函数则会将Enter留在输入流中,这样会影响到下一次信息的输入。有时候需要将已经读入的信息先判断再决定是否放回到数据流中再等待正确的接收信息。 2.5关于循环操作程序将在每次操作结束之后,自动保存数据,返回主界面,并进行数据检查,读入,初始化数据等操作,等待下一次命令。三、系统功能详细设计总体构思:模块化解决问题。3.1主函数 main()算法:建立变量go_to,调用密码服务[password();],将密码服务的返回值赋予go_to, 并根据go_to的值判断用户类型,决定授予的权限和去向。int go_to=0;调用密码服务函数go_to是否为1?是否打印提示调用主控函数1是否为2?是否打印提示调用主控函数2打印提示退出3.2普通用户主控程序 void main_control_1()算法:先声明2个变量structMember *head1;和char go_where;利用数据读取函数[basic_read_1(1);]对head1进行初始化,等待进行下面的操作。在对go_where进行赋值的时候会进行赋值检测,非
文档评论(0)