南京理工大学visualC++课程设计工资管理.docVIP

南京理工大学visualC++课程设计工资管理.doc

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
南京理工大学visualC课程设计工资管理

Visual C++ 课程设计报告 ——————工资管理 一 程序功能简介 这是一个员工工资管理程序。工资管理程序的数据文件中存储有员工姓名和工资,该程序可以录入、显示、修改、删除、查找员工姓名和工资。 二课程设计心得 因为以前课上讲的类都是很简单的类的运用,并没有涉及完全通过类的调用来建立链表,所以遇到了不少问题: 起初并不知道如何用类来建立链表。也完全不理解cnode类的作用,以为完全可以用cllist来调用完成。 设计过程中,一开始不明白gethead,以及其他这样类中返回节点,返回数据的作用。所以并没有设立这些函数,很久之后调试出现问题,才想起最基本的类外函数不可以直接调用私有成员。 由于输入输出流,老师上课讲的不多,一开始找不到文件输入输出的方法。后来通过模仿书上的输入方式,及与做同一课题的同学进行了交流解决了这个问题。 程序编完后出现第一个解决不了的问题是输入,总是没显示,找了很久才发现是因为函数都是在传值,加了引用才解决。但后来又出现了问题,地址重复,想了很久通过在函数中再设一个同类变量解决。还有一个问题便是一开始不管怎么输出都只能输出一行后来发现是因为在addrecord函数中p未付新空间 通过解决这么多问题,在查书和与同学商讨中一步一步的深入了对类和链表的认识。并学会了怎样在错误中一步步吸取教训,达到正确目标。 不足之处: 1 界面不太友好。多次操作时因为重复显示菜单界面有点混乱。 2 程序有点冗长。有的地方可以简化一点 三 课程设计的要求,及自己的解决方法 (1)用类的形式改写程序。 该程序中共定义了3个类。 第一个为数据类,是用来存储员工姓名和工资数据的类。具体内容如下: class CSalary { char szname[20]; //姓名 double dlSalary; //工资 public: CSalary() {strcpy(szname,\0); dlSalary=0.0;} //默认构造函数 CSalary(char *,double); //构造函数 void SetSalary(char a[],double s) {dlSalary=s; strcpy(szname,a); } //工资与姓名输入 char *GetName() {return szname;} //返回姓名 double GetSal() {return dlSalary;} //返回工资 int Compare(char name[]) {if(strcmp(name,szname)==0) return 1; else return 0; } //比较姓名,供查找用,比较结果1,0 void Show() {cout姓名szname 工资=dlSalaryendlendl; } //显示工资 void ch(double a) //初始化工资数据 {dlSalary=a;} }; 第二个为结点类,该类涉及结点的输入、输出、复制等。具体如下: cclass CNode //定义结点类 { CSalary *pData; //用于指向数据类的指针,这是每个数据的不同部分 CNode *pNext; //指向链表的指针 public: CNode() { pData=0; pNext=0; } //结点的构造函数 CNode(CNode node) { pData=node.pData; pNext=node.pNext; } //用于拷贝的构造函数 void InputData(CSalary *pdata) {pData=pdata;pNext=0;} //输入数据 void ShowNode() {pData-Show();} //显示数据 CSalary *GetData() { return pData;} CNode *Getnext(){return pNext;} //返回下一个节点 friend class CList; //定义友元类 }; 第三个类为链表类,将结点视为类中的数据成员,涉及结点的插入、输出、删除等操

文档评论(0)

yan698698 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档