1、程序设计报告( / 学年 第 学期)题 目:模拟工资管理系统专 业学 号 姓 名指 导 教 师 指 导 单 位 日 期 成员分工组长组员(/)组员(/)评分细则评分项优秀良好中等差遵守机房规章制度上机时的表现学习态度程序准备情况程序设计能力团队合作精神课题功能实现情况算法设计合理性用户界面设计报告书写认真程度内容详实程度文字表达熟练程度回答问题准确度简短评语教师签名:年月日评分等级备注评分等级共五种:优秀、良好、中等、及格、不及格模拟工资管理系统一、 课题内容和要求模拟工资管理系统是一个单位最基本的一项财务管理系统,该系统要求实现一个简单、实用的财务管理程序,主要功能包括员工信息的录入、查找、
2、修改、删除、统计、排序、查看等.所有帐务数据都要利用文件系统保存,以备系统下次运行时使用。通过此课题,熟练掌握文件、数组、指针的各种操作,以及一些基本算法思想的应用。另外,该程序还可以让每个职工更改自己的密码,查看自己的信息。【基本要求】管理员:1)以密码登录系统2)录入员工信息具体工资,计算相应的税金(计算规则参见最新公布的政策)3)查询并显示所有的员工具体信息4)显示统计信息:员工数目,工资总数和税金总数5)按照指定条件查询6)增删具体员工记录税金政策基本是不同收入等级的工资使用不同的比例收取税金.类似于下表:工资税金0150001500250010(超出部分)2500350015(超出部
3、分)3500500020(超出部分)50001000030%(超出部分)1000040(超出部分)员工:1) 以工号为登录ID,密码自己设定;2) 可以查询本人的相关信息;3) 系统提供指定时间间隔的查询功能。二、 需求分析功能框架图:(见图21)添加职工查看信息修改信息信息统计库显示删除职工职工排序查找职工保存信息信息查询退出程序退出程序修改密码用户登录管理员登录模拟工资管理系统图2-1设计要求:1) 根据工资管理系统的数据信息要求,设计合适的数据结构(如结构数组、简单链表等)。2) 选择文件存储格式(文本或二进制)和文件名。3) 采用自顶向下的设计方法,设计系统的总体模块组成和数据结构。4
4、) 对于每项操作,设计一个函数(方法、子模块)进行实现,要明确函数原型。5) 根据设计结果分步开发实现各模块,最后进行总体集成.三、 概要设计1)主要的类:class Worker/职工类public:Worker()Worker()void Show();/职工信息显示double GetTax(); / 获取缴税double GetPay(); / 获取实发工资char Pw20;/职工密码friend class Workers; /将职工群类作为职工类的友元类private:string ID, name, sex, edu, address, tel;/工号,姓名,性别,教育程度,住
5、址,电话int age;/年龄double salary,tax, pay;/月薪,税金,实际收入;class Workers/职工群类private:Worker wN; /N个职工int NUM;/用来计算职工数目int count;/ 用来计算当前程序新添加的职工数目double tsalary = 0, ttax = 0;/ 工资总数,税金总数public: Workers() Workers()int Num();/计算并返回文件已包含的职工数量void add();/职工信息添加void Sort();/职工信息排序void Search();/查找职工信息函数(查找已保存的职工)
6、void Delete();/职工信息删除void Amend();/职工信息修改void Save();/职工信息以文件形式保存void Showsaved();/职工信息显示函数(显示文件中的内容)void Showcur();/读取并显示职工信息(当前输入的信息)string GetID(int);/获得职工工号void Show(int );/用户登录时显示当前用户信息void Total();/统计信息并且显示void ChangePw();/用户修改密码;2)主要函数流程图:(1)执行函数(Execute):申请一个职工群类,调用所有的函数,程序中所有的步骤都在这里执行(从登录到退
7、出程序).(见图31)图31 执行函数(1) 添加函数(add):输入职工信息,用数组存入内存.然后用save()函数保存。图32 添加函数(3)保存函数(save):将输入的信息追加存入到文件中.图33 添加函数(4)查找函数(showcur):根据用户输入的选项,去选择工号、姓名、性别、学历其中之一进行查找符合要求的所有职工,并输出到屏幕上.图3-4 查找函数(5)修改函数(Amend):输入工号以确定要修改的职工,如果存在该职工则再输入要修改的项目,修改完成后保存到文件。图35 修改函数(6)排序函数(sort):输入排序标准,根据姓名、工资等升序降序排序并保存。图3-6 排序函数(7)删除函数(delete):打开文件,输入工号确定删除的职工,删除后保存。图37 删除函数(8)库显示函数(showsaved):打开文件,读取并显示到屏幕上,关闭文件。图38 库显示函数(9)修改密码(ChangePw):输入旧密码正确后才能修改,连续输入两次相同新密码才修改成功.图39 修改密码函数