欢迎来到天天文库
浏览记录
ID:18808480
大小:88.50 KB
页数:30页
时间:2018-09-25
《c++计算机实践报告》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、C++实践报告中南大学本科生课程设计(实践)任务书、设计报告(C++课程设计)题目职工工资管理系统学生学号学生姓名指导教师学院物理学院专业班级指导老师计算机基础教学实验中心2010年07月08日-29-C++实践报告职工工资管理系统摘要:经过近两周24学时的C++计算机实践,我基本上完成了对所要求的熟悉使用MFC类库编程和使用C++编写一个关于企业职工工资管理系统的程序。对于使用C++面向对象的编程思想也有了更深的体会。关键词:职工工资、系统、指针、链表、增加删除信息、结构体、类成员函数使用、全局变量1、职工工资管理系统的开发设计思想1、
2、职工工资管理系统可以通过输入输出某一职工的一些信息,如月份、编号、基本工资、补贴等进行对职工信息的处理。2、为了更方便地表示一个职工的基本信息,可以先定义一个结构体(Emp_info),在这个结构体中包含了一个职工的所有基本信息。3、定义一个类(Employee),在类中定义必要的成员函数,用这些函数可以对结构体中的职工信息进行需要的处理,如添加职工信息函数(AddItem)、删除职工信息函数(RemoveItem)、查找职工信息函数(Search)等。然后通过调用成员函数来实现系统的功能。4、用类Employee定义一个全局变量empl
3、oyee,设计主函数及其所调用的函数,通过employee来使用类中的成员函数达到处理数据的目的。2、职工工资管理系统功能及系统设计介绍1、系统的功能-29-C++实践报告职工工资管理系统能根据已输入的数据信息进行必要的数据处理,然后可以根据提示添加或删除职工信息,还可以对有误信息进行修改。出于发工资时的需要可以对某些或全部的职工信息进行输出。系统的总的功能如图所示:职工工资管理系统输出主菜单输入选项添加职工工资信息删除职工工资信息修改职工工资信息输出指定职工工资信息输出全体职工工资信息退出结束是否为完成这些功能首先需要一个可以存储数据的
4、数据单元,即一个结构体Emp_info,在这个结构体中定义必要的变量:pay[5]、gpay、tax、ded、apay。其所对应的具体变量如下表所示。pay[0]pay[1]pay[2]pay[3]pay[4]gpaytaxdedapay基本工资补贴房租会费储蓄应发数个人所得税应扣数实发数定义了结构体后需要定义一个类Employee,在类中定义了两个私有成员函数Find和Print用来查找和输出职工工资信息,六个公有成员函数分别为ListCount()、AddItem()、RemoveItem()、AmendItem()、List()、S
5、earch()、PayInfo()-29-C++实践报告。然后根据不同的功能分别编写成员函数。2、系统主要模块设计⑴类成员函数的设计①、AddItem()成员函数的设计添加信息是所有功能实现的一个必要条件,因此十分重要。在AddItem()之前还有一个统计此前链表数目的函数ListCount(),然后返回一个链表数值。在AddItem()成员函数实现之初需要先判断当前链表是否为空,这可以通过之前的ListCount()函数的返回值是否为零来判断。若没有直接添加信息,若有,还需考虑输入的是否为之前存储过的,若是存储过的需返回一个通知的消息,
6、否则可以用结构体Emp_info开辟(newEmp_info)一个新的数据域存储所输入的数据,并将其地址赋给上一个结点的next,这样就完成了添加信息的目的。②RemoveItem()成员函数的设计定义p1为num的链表、p为num前一个链表的地址,p1->next=p->next,删除p1是否存在num输入一个num删除职工信息Num是否是第一个链表p=headhead=head->next删除p结束删除调用查找函数-29-C++实践报告删除成员函数是在之前输入的信息有误时对原数据作一定的纠正,这增加了系统的功能和可用性,给使用者也带来
7、一定便利之处。此处删除是按照使用者数的学号进行查找删除的,具体实现步骤如图。通过图示方法能成功删除一些无使用价值的信息。③、AmendItem()函数的设计修改函数的作用与删除函数相似,其设计较前两个成员函数容易。先调用一个查找函数,查找到这个链表的位置,然后调用输入输出函数重新对链表中的变量赋值。④Search()函数的设计处于显示页面的优化的需要,在查找之前先输出〝Search......〞。定义一个p指针存放用Find()函数找到的满足要求的数据域的地址,然后调用输出函数将所得数据域内变量值一一对应输出即可。⑤、Find()函数的设
8、计前面的几个函数几乎无不调用了Find()函数,因此Find()函数也是个功能实现的重要的一个部分。查找时首先需要判断是否当前列表为空,如果为空查找将无意义,不为空时才对链表中的数据进行查找-
此文档下载收益归作者所有