黄石理工C课程设计职工工资管理系统.doc
《黄石理工C课程设计职工工资管理系统.doc》由会员分享,可在线阅读,更多相关《黄石理工C课程设计职工工资管理系统.doc(38页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、课 程 设 计设计题目: 职工工资管理系统 学生姓名: 刘汉 学生学号: 6 专业班级: 09计科(1) 指导教师: 祁文青 2011-12-20 目 录一、前言1二、课题要求、课题分析1(一)课题要求1(二)课题分析1三、方案设定2四、程序功能描述与模块结构2(一)程序功能描述2(二)功能模块2(三)程序流程图3四、用户使用说明6五、测试结果7六程序经验教训总结12七附录13一、前言C+语言是具有面向对象特性的C语言的继承者,即是由C语言演变而来,全面兼容C语言。C语言的优点,如语言简洁灵活,运算符和数据结构丰富,具有结构化控制语句,程序执行效率高,同时具有高级语言与汇编语言的优点,这些在C
2、+语言中同样能够体现出来。但是C+语言最有意义的方面是支持面向对象的程序设计,在数据类型、算法的控制结构、函数等方面都有很好的体现。面向对象编程中,对象是程序设计的基本单位,但对象的静态属性往往需要用某种类型的数据来表示,对象的动态属性要由成员函数来实现,面向函数的实现归根到底还是算法的设计。二、课题要求、课题分析(一)课题要求C+课程设计通过综合运用在C+程序设计和数据结构中所学的程序结构、流程控制语句、数组、函数、指针、结构体、数据结构等知识,以简易“管理信息系统”程序设计为载体,以C+语言为工具,使我们更深地涉足计算机专业设计领域,并使所学知识和技能得到进一步巩固、深化和扩展,以达到能用
3、C+编写初等程度软件的目的,为继续学习后续课程及今后走上相关工作岗位打下良好的基础。经过调查分析,决定设计职工工资管理系统。创建存储职工工资信息的存储文件。添加某职工的工资信息。删除某职工的工资信息。修改某职工的部分工资信息(当月开始增加或减少某些项工资或扣款数变化)。输出指定编号职工的工资信息(查询用)。输出全体职工的工资信息(发工资用)。(二)课题分析职工工资管理系统可定位于企业会计系统的一个子系统,该系统主要完成的工作为:录入各职工自身及工资情况、对已经存在的数据的修改、删除、可查询、统计系统中的数据等。为此因此职工工资管理系统的功能:读取文件信息、数据输入、显示、排序、查找、增加、删除
4、、修改、保存等。三、课程设计内容及进度安排(一)课题内容:该系统在磁盘上存储了某单位全体职工的工资信息。对于每位职工存储以下信息:职工编号、基本工资、津贴、岗贴、补贴、应发数、个人所得税、应扣数、实发数。个人所得税计算方法设为:工资少于1100元的部分为0,11001600元部分为5%,16002600部分为10%,26003600部分为15%,5600元以上部分为20%。(二)课题要求:1分析问题,给出数学模型,选择数据结构.2设计算法,给出算法描述3给出源程序清单4. 编辑、编译、调试源程序5. 撰写课程设计报告四、 程序功能描述与模块结构(一)程序功能描述 通过主菜单display()函
5、数将读取文件信息、输入、显示、统计、增加、删除、修改、查找、排序等函数结合一起,在用户通过相关操作选择其中一个功能时,调用该功能函数,完成数据处理。在主函数中调用主菜单diplay()函数,完成操作。用一个中间函数将主函数与各功能函数连接在一起,不仅使程序语言简洁、明了、易懂,而且在功能实现上也更加晚上。(二)功能模块1.主函数int main():设置背景颜色和字体颜色、调用设计者的相关信息函数、调用display函数,实现系统的主要功能处理;2.主菜单dispiay()函数:确定如何选择所需功能,调用读取文件信息、数据输入、显示、排序、查找、增加、删除、修改、保存等函数,完成职工工资管理系
6、统的数据处理;3.读取文件的信息read()函数:从文件中读取职工工资的信息表并显示出来;4.数据输入函数shuru():建立链表,完成职工信息录入;5.数据显示函数diaplay():将职工信息数据显示出来;6.数据统计函数tongji():统计职工人数;7.数据增加函数tianjia():添加职工信息;8.数据删除函数shanchu():删除职工信息数据;9.数据修改函数xiugai():修改职工工资等信息数据;10.数据查找函数chazhao():查找某一职工工资等信息情况;11.数据保存函数save():对系统中的数据进行相关的操作后将其保存起来;12.作者信息函数editor():显
7、示设计者的相关信息;13.登陆函数Pass():设定使用权限。(三)程序流程图程序流程图主是对各功能模块的具体描述,以一种图表的方式简洁明了的将各模块的呈现出来,通过这些流程图可清楚的看出整个程序的运行过程,体会程序的流畅性。1. 主函数流程图结束调用主菜单函数调用登陆函数pass () Main ()调用作息信息函数editor ()调用系统函数system(“color d”)开始 图1-1主函数的流程图2各子功能函数流程图开始定义变量输出系统相关信息输入sumsum9while(sum)调用 统计函数调用 显示函数调用 输入函数调用 查找函数调用 增加函数调用 删除函数调用 修改函数调用
8、 保存函数输出函数结束NY图1-2 Menu函数流程图五、用户使用说明这是一个关于职工工资管理系统,具有输入、输出、统计、删除、查询、修改数据等功能,建立了一个含有姓名、性别、编号、工资、总工资等成员的结构体数据类型的变量struct xinxi 。1. 用户使用时,根据提示操作,进入登陆页面。输入登陆名ltf,登陆密码ltf,进入操作系统。如果登陆信息输错三次,自动退出系统。2. 按显示的数字选择操作,先输入职工数据,然后进行其他操作。所以输入“1”,开始录入相关数据。用户录入完数据后,在姓名处键以“0”,结束操作。3. 提取文件信息,输入数字“9”,回车确定操作,将系统以前操作过的保存的文
9、件提取出来,并显示。4. 显示职工信息,输入数字“3”,将需显示的职工信息的编号输入,回车确定操作,系统提取相关数据并显示。5. 将输入的数据进行统计排序,输入数字“7”,回车确定操作,系统显示工资统计表、及各项工资的平均值。6. 查找职工工资,输入“4”,回车确定操作,系统显示“请输入要查找的编号”,输入想要查找的职工的编号,系统提取保存的数据,并显示出来。7. 增加职工工资,输入“6”回车确定操作,系统显示输入的页面,将需增加的职工信息输入,输入完后回车确定,系统显示成功插入,并显示职工工资信息表。8. 删除职工工资,输入“5”,回车确定操作,系统显示“请输入要删除的编号”,输入要删除的职
10、工编号,系统将保存的数据删除,并显示剩余的职工工资信息表。9. 修改职工信息,输入“2”,回车确定操作,输入要修改的编号,系统显示该职工的信息,将改后的信息输入系统。10.将所有操作过的信息保存,输入“8”,回车确定操作,系统显示成功保存信息。11.退出系统,输入“0”,回车确定操作,系统显示退出的页面,输入任意一个键,退出系统。(温馨提示:因时间的限制等原因,本程序内存设置还不够很完善,所以对于整个系统的使用应按照系统设置的顺序,一项项完成下来,方可不出现漏洞。如果没按照顺序操作,可能会在使用的过程出现一些小差错。)六、测试结果1. 开始运行程序,进入系统页面,显示制作者的信息。图2-1 显
11、示制作者信息的页面2. 任意键继续操作,进入登陆页面。图2-2 登陆系统的页面输错管理员名字或者密码进入到的页面如下图2-3 登陆系统出错的页面3. 成功进入操作系统,按照使用说明进行操作,进入的是总系统的提示页面。图2-4 系统操作的页面图2-5 输入数据的页面图2-6 显示数据的页面图2-7 文件提取信息的页面图2-8 排序统计的页面图2-9 查找职工信息的页面图2-10 查找不到职工信息的页面图2-11 增加职工信息的页面图2-12 增加职工信息后并显示职工工资信息表的页面图2-13 删除职工信息并显示剩余职工信息的页面图2-14 修改职工信息的页面图2-15 成功修改职工信息的页面图2
12、-16 修改没有编号职工信息的页面图2-17 保存所有数据的页面图2-18 退出系统的页面七程序经验教训总结通过这个程序设计,我不仅提高了动手操作能力,对C+语言有了更深的认识,能够更好地运用C+语言进行编程设计,同时在思维、看待问题的全面性等方面也有了很大的提高。不过由于时间、经验不够、对语言的掌握程度不深等问题,在这个系统设计还存在一些问题,比如内存设计还不够完善,整个系统的流畅性等,希望可以在今后的设计上能够解决这些问题,做的更好。九附录/职工成绩管理系统#include #include #include #include #include #include #define NULL
13、0int const N=20;#define LEN sizeof(struct epployee)using namespace std; int n=0; /定义一个全局变量统计职工人数 /定义一个职工信息的结构体struct epployee char nameN; /用来存放姓名char sexN; /用来存放性别long id; /用来存放编号float paid3; /用来存放工资int total; /用来存放总工资struct epployee *next;/职工类class Information public:Information() ; /构造函数. Informat
14、ion() ; /析构函数. epployee *creat(); /建立链表void output(epployee *head); /显示职工信息int count(epployee *head); /定义函数count()统计职工总数epployee *insert(epployee*head); /指针函数*insert()用来添加职工信息.epployee *cancel(epployee *head,long id); /指针函数*cancel()用来删除职工信息.epployee *find(epployee *head,long id); /指针函数*find()用来查找职工信
15、息.epployee *modify(epployee *head,long id); /指针函数*modife()用来修改职工的信息.void sort(epployee *head); /定义paixu()函数将职工的总额从大到小排列并输出void average(epployee *head); /定义职工工资平均值的函数void save(epployee *head); /保存文件信息epployee *Read(); /读取文件信息private:epployee *p1,*p2,*p3,*head,st; ;Information:Information() cout *n;co
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 黄石 理工 课程设计 职工工资 管理 系统
限制150内