欢迎来到天天文库
浏览记录
ID:56832527
大小:108.50 KB
页数:24页
时间:2020-07-15
《软件开发技术基础的实验报告.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、《软件开发技术基础》实验报告姓名:学号:班级:实验一线性表的操作(2学时)实验类型:验证性实验要求:必修实验学时:2学时一、实验目的:参照给定的线性表顺序表类和链表类的程序样例,验证给出的线性表的常见算法。二、实验要求:1、掌握线性表顺序表类和链表类的特点。掌握线性表的常见算法。2、提交实验报告,报告内容包括:目的、要求、算法描述、程序结构、主要变量说明、程序清单、调试情况、设计技巧、心得体会。三、实验内容:设计一个静态数组存储结构的顺序表类,要求编程实现如下任务:1)建立一个线性表,首先依次输人整数数据元素(个数根据自己的需要键盘给定)2)删除指定位置的数据
2、元素(指定元素位置通过键盘输入)再依次显示删除后的线性表中的数据元素。3)查找指定数据的数据元素(指定数据的大小通过键盘输入),若找到则显示位置,若没有找到就显示0。四、要求1)采用顺序表实现,假设该顺序表的数据元素个数在最坏情况下不会超过50个。2)写出完整的程序并能调试通过即可源程序如下:#includeusingnamespacestd;templateclasssq_LList{private:intmm;intnn;T*v;public:sq_LList(){mm=0;nn=0;return;}sq_LList(i
3、nt);voidprt_sq_LList();intflag_sq_LList();voidins_sq_LList(int,T);voiddel_sq_LList(int);intsearch_sq_LList(Tx);};templatesq_LList::sq_LList(intm){mm=m;v=newT[mm];nn=0;return;}templatevoidsq_LList::prt_sq_LList(){inti;cout<<"nn="<4、intsq_LList::flag_sq_LList(){if(nn==mm)return(-1);if(nn==0)return(0);return(1);}templatevoidsq_LList::ins_sq_LList(inti,Tb){intk;if(nn==mm){cout<<"overflow"<nn)i=nn+1;if(i<1)i=1;for(k=nn;k>=i;k--)v[k]=v[k-1];v[i-1]5、=b;nn=nn+1;return;}templatevoidsq_LList::del_sq_LList(inti){intk;if(nn==0){cout<<"underflow!"<6、7、(i>nn)){cout<<"Notthiselementinthelist!"<intsq_LList::search_sq_LList(Tx){in8、ti,j,k;i=1;j=nn;while(i<=j){k=(i+j)/2;if(v[k-1]==x)cout<<"你要查找的数现在的位置为:"<<(k-1)<x)j=k-1;elsei=k+1;}return(0);}intmain(){inty;sq_LLista(100);cout<<"第一次输出顺序表对象a:"<9、4,7);a.ins_sq_LList(5,9);a.ins_sq_LList(6,11);cout<<"第二次输出顺序表对象a:"<>y;cout<10、过本次试验,我掌握了线性表的基本概念。
4、intsq_LList::flag_sq_LList(){if(nn==mm)return(-1);if(nn==0)return(0);return(1);}templatevoidsq_LList::ins_sq_LList(inti,Tb){intk;if(nn==mm){cout<<"overflow"<nn)i=nn+1;if(i<1)i=1;for(k=nn;k>=i;k--)v[k]=v[k-1];v[i-1]
5、=b;nn=nn+1;return;}templatevoidsq_LList::del_sq_LList(inti){intk;if(nn==0){cout<<"underflow!"<6、7、(i>nn)){cout<<"Notthiselementinthelist!"<intsq_LList::search_sq_LList(Tx){in8、ti,j,k;i=1;j=nn;while(i<=j){k=(i+j)/2;if(v[k-1]==x)cout<<"你要查找的数现在的位置为:"<<(k-1)<x)j=k-1;elsei=k+1;}return(0);}intmain(){inty;sq_LLista(100);cout<<"第一次输出顺序表对象a:"<9、4,7);a.ins_sq_LList(5,9);a.ins_sq_LList(6,11);cout<<"第二次输出顺序表对象a:"<>y;cout<10、过本次试验,我掌握了线性表的基本概念。
6、
7、(i>nn)){cout<<"Notthiselementinthelist!"<intsq_LList::search_sq_LList(Tx){in
8、ti,j,k;i=1;j=nn;while(i<=j){k=(i+j)/2;if(v[k-1]==x)cout<<"你要查找的数现在的位置为:"<<(k-1)<x)j=k-1;elsei=k+1;}return(0);}intmain(){inty;sq_LLista(100);cout<<"第一次输出顺序表对象a:"<9、4,7);a.ins_sq_LList(5,9);a.ins_sq_LList(6,11);cout<<"第二次输出顺序表对象a:"<>y;cout<10、过本次试验,我掌握了线性表的基本概念。
9、4,7);a.ins_sq_LList(5,9);a.ins_sq_LList(6,11);cout<<"第二次输出顺序表对象a:"<>y;cout<10、过本次试验,我掌握了线性表的基本概念。
10、过本次试验,我掌握了线性表的基本概念。
此文档下载收益归作者所有