实验群体类和群体数据吕恩在.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文档。上传文档
查看更多
学校代码: 学号: 《面向对象程序设计》实验报告 ( 题 目 : 群 体 类 和 群 体 数 据 二〇 一 学 生 姓 名 : 五年 学 院 : 十 二月 系 别 : 专 业 : 群体 类 班 级 : 任 课 教 师 : 和群 体 数据 一、 实验目的 1. 了解节点类的声明和实现,学习其使用方法 2. 了解链表类的声明和实现,学习其使用方法 3. 了解栈类的声明和实现,学习其使用方法 4. 了解队列类的声明和实现,学习其使用方法 5. 掌握对数组元素排序的方法 6. 掌握对数组元素查找的方法 二、 实验任务 1. 编写程序 Node.h实现例 9-5 的节点类,并编写测试程序 lab9_1.cpp,实现链 表的基本操作 2. 编写程序 link.h 实现例 9-6 的链表类,在测试程序 lab_2.cpp中声明两个整型 链表 A 和B,分别插入 5 元素,然后把 B 中的元素加入 A 的尾部 3. 编写程序 queue.h,用链表实现队列(或栈),在测试程序 lab9_3.cpp 中声 明一个整型队列(或栈)对象,插入 5 个整数,压入队列(或栈),再依次 取出并显示出来。 4.(选做)声明 course(课程)类,有属性:课程名 charname[21]、成绩 shortscore;在实验七的 student 类中增加属性;所修课程 course,为课程类 对象的链表。在测试程序中测试这个类,学生类与课程类关系如图 5.将直接插入排序、直接选择排序、冒泡排序、顺序查找函数封装到第九章的 数组类中,作为成员函数,实现并测试这个类 三、实验内容: 1.//9-5.h #ifndefNODE_CLASS #defineNODE_CLASS templateclassT classNode { private: NodeT*next;// 指向后继节点的指针 public: Tdata;//数据域 Node(constTitem,NodeT*ptrnext=NULL); voidInsertAfter(NodeT*p); NodeT*DeleteAfter(void); NodeT*NextNode(void)const; }; templateclassT NodeT::Node(constTitem,NodeT*ptrnext): data(item),next(ptrnext) {} templateclassT NodeT*NodeT::NextNode(void)const { returnnext; } templateclassT voidNodeT::InsertAfter(NodeT*p) { p-next=next;//p 节点指针域指向当前节点的后继节点 next=p;// 当前节点的指针域指向 p } templateclassT NodeT*NodeT::DeleteAfter(void) { NodeT*tempPtr=next;// 将欲删除的节点地址存储到 tempPtr 中 if(next==NULL)// 如果当前节点没有后继节点,则返回 NULL returnNULL; next=tempPtr-next;// 使当前节点的指针域指向 tempPtr 的后继节点 returntempPtr;// 返回被删除的节点的地址 } #endif//NODE_CLASS //Node.h #ifndefNODE_LIBRARY #defineNODE_LIBRARY #includeiostream #includecstdlib #include9_5.h usingnamespacestd; templateclassT NodeT*GetNode(constTitem,NodeT*nextPtr=NULL) { NodeT*newNode; newNode=newNodeT(item,nextPtr); if(newNode==NULL)// 如果分配内存失败,程序中止 { cerrMemoryallocationfailure!endl; exit(1); } returnnewNode; } enumAppendNewline{noNewline,addNewline}; templateclassT voidPrintList(NodeT*head,AppendNewlineaddnl=noNewline) { NodeT*currPtr=head; while(currPtr!=NULL) { if(addnl==addNewline) coutcurrPtr-dataendl; else coutcurrPtr-data; currPtr=currPtr-NextNode(); } }

文档评论(0)

157****1802 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档