工资管理C++程序实验报告.doc

工资管理C++程序实验报告.doc

ID:53862534

大小:178.00 KB

页数:4页

时间:2020-04-09

工资管理C++程序实验报告.doc_第1页
工资管理C++程序实验报告.doc_第2页
工资管理C++程序实验报告.doc_第3页
工资管理C++程序实验报告.doc_第4页
资源描述:

《工资管理C++程序实验报告.doc》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、《程序设计实践》报告一、题目第五部分小型管理程序第1题工资管理a.程序功能简介:一个员工工资程序:有新建、存储、显示、修改和删除功能。b.设计要求:(1)完善帮助信息,帮助信息没有把操作的所有命令列出。(2)一进入程序首先显示所有命令。(3)使用n键新建一个数据项并询问是否要存储,按y键存储,其他键取消存储。(4)显示、修改和删除数据项时大小写通用。(5)将所有的函数与相应的数据项封装到类中,并改写主程序。题目难度:B二、问题分析及求解基本思路看到这个题目,第一个想法就是分析一下这个程序里面会有哪些数据元素,需要哪些功能函数,对于要选择数

2、据类型的话,首先想到的肯定是类,这样才能把那些例如名字,工资金额等这些不同类型的数据打包封装在一起,然后对的接口就是一些定义,调用的函数。这样程序会看上去更有调理,易懂。然后就要想需要定义哪些类,从最简单的入手,第一个肯定要定义个CSalary类,用来存储职工名字和工资,然后再在里面定义一些构造函数,析构函数,返回姓名和工资的函数,比较姓名用来查找。然后为了不让CSalary类太过复杂庞大,就想到再定义一个CNode的节点类,把CSalary类包含进去,然后可用于输入,输出,赋值等。但如果光这两个类的话显然太弱了,因为会发现如果你要同时录

3、入多个人工资信息时就会很麻烦,因为它只能保存一个人信息,所以想要录入多人信息,就还得再定义个链表类CList,里面包含了节点类CNode的成员(即把CList申明为CNode的友元类),然后在CList类中就可以进行对节点的插入,删除,输出等功能。三个类大致定义好了,接下来就是对成员函数的定义,这个问题不大。为了加强程序的文件输入输出功能我用了输入输出流函数,这个是看书上模仿做的。三、问题求解的整体框架结构定义三个类:第一个CSalary类用来存储姓名、工资等内容第二个节点类用来输入、输出、赋值等内容第三个链表类,将节点类看做里面的数据成

4、员,用来插入,删除,输出节点然后定义一个输入输出流函数,在执行时首先将工资从文件中读出再进行管理,在程序结束时将工资数据保存在原文件中四、主要算法1、第一个数据类中,用来存储职工姓名和工资ClassCSalary{姓名;工资;Public:构造函数;char*GetName()返回姓名;doubleGetSal()返回工资;intCompare(charname[])比较姓名,供查找用;voidshow()用于显示姓名和工资;voidch(doublea)初始化工资;}第二个节点类,包含数据类的成员,该类涉及节点输入,输出,赋值等Clas

5、sCNode{CSalary*pData;定义指向数据类的指针CNode*pNext;指向下一结点指针;public:构造函数;拷贝构造函数;voidInputData()输入数据的函数;voidShowNode()显示数据的函数;CSalary*GetData()返回下一个节点;friendclassCList定义一个友元类;}第三个为链表类,将节点视为类中的数据成员,涉及节点的插入,删除,输出等操作classCList{Protected:CNode*pHead;Public:构造函数;VoidDeleteList()删除整个链表;析

6、构函数;VoidDeleteNode()删除指定节点,返回节点的指针;VoidShowList()输出整个链表;VoidInsert(CNode*)插入一个节点内容;}显示、修改、删除数据时大小写通用:2、定义一个函数,通过调用库函数strupr,全部转换为大写。Voidchange(charp[]){strcpy(p,strupr(p));}3、工资数据按大小排序进行存放4、修改,删除数据前增加提示信息,用户确认后才能进行下一步操作5、增加文件输入输出功能,在执行程序中首先将工资数据从文件中读出在进行管理,在程序结束时能将工资数据保存到

7、原文件中五、测试输入界面:显示界面:修改界面:六、总结操作界面不够友好,限制条件还比较少。

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。