欢迎来到天天文库
浏览记录
ID:47063293
大小:1.04 MB
页数:30页
时间:2019-07-12
《实验报告材料4群体类和群体大数据》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、学校代码:10128学号:201220905060《面向对象程序设计》实验报告(题目:群体类和群体数据学生姓名:燕飞学院:理学院系别:数学系专业:信息与计算科学班级:信计12-2任课教师:侯睿二〇一五年十一月30一、实验目的1、了解节点类的声明和实现,学习其使用方法2、了解链表类的声明和实现,学习其使用方法3、了解栈类的声明和实现,学习其使用方法4、了解队列类的声明和实现,学习其使用方法5、掌握对数组元素排序的方法6、掌握对数组元素查找的方法二、实验内容1、编写程序Node.h实现例9-5的节点类,并编写测试程序lab9_1.cpp,实现链表的基本操作。2、编写程序link.h实
2、现例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、将直接插入排序、直接选择排序、冒泡排序、顺序查找函数封装到第九
3、章的数组类中,作为成员函数,实现并测试这个类。三、实验程序1、#ifndefNODE_CLASS#defineNODE_CLASStemplateclassNode{private:Node*next;public:Tdata;Node(constT&item,Node*ptrnext=NULL);voidInsertAfter(Node*p);Node*DeleteAfter(void);Node*NextNode(void)const;};template30Node::Node(constT&item,No
4、de*ptrnext):data(item),next(ptrnext){}templateNode*Node::NextNode(void)const{returnnext;}templatevoidNode::InsertAfter(Node*p){p->next=next;next=p;}templateNode*Node::DeleteAfter(void){Node*tempPtr=next;if(next==NULL)returnNULL;next=tempPtr->nex
5、t;returntempPtr;}#endif#ifndefNODE_LIBRARY#defineNODE_LIBRARY#include#include#include"9_5.h"usingnamespacestd;templateNode*GetNode(constT&item,Node*nextPtr=NULL){Node*newNode;newNode=newNode(item,nextPtr);if(newNode==NULL){cerr<<"Memoryallocationfailure!
6、"<30voidPrintList(Node*head,AppendNewlineaddnl=noNewline){Node*currPtr=head;while(currPtr!=NULL){if(addnl==addNewline)cout<data<data<<"";currPtr=currPtr->NextNode();}
7、}templateintFind(Node*head,T&item,Node*&prevPtr){Node*currPtr=head;prevPtr=NULL;while(currPtr!=NULL){if(currPtr->data==item)return1;prevPtr=currPtr;currPtr=currPtr->NextNode();}return0;}templatevoidInsertFront(Node
此文档下载收益归作者所有