实验1 线性表及其应用实验报告

实验1 线性表及其应用实验报告

ID:33428055

大小:139.98 KB

页数:9页

时间:2019-02-25

实验1 线性表及其应用实验报告_第1页
实验1 线性表及其应用实验报告_第2页
实验1 线性表及其应用实验报告_第3页
实验1 线性表及其应用实验报告_第4页
实验1 线性表及其应用实验报告_第5页
资源描述:

《实验1 线性表及其应用实验报告》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、暨南大学本科实验报告专用纸课程名称数据结构成绩评定实验项目名称线性表及其应用指导教师王晓明实验项目编号实验一实验项目类型综合性实验地点南海楼601学生姓名朱芷漫学号2010051875学院信息科学技术学院系计算机专业计算机科学与技术实验时间2011年9月7日18:30午~9月7日20:30午温度℃湿度一、实验目的和要求实验目的:熟练掌握线性表基本操作的实现及应用实验要求:在上机前写出全部源程序完毕并调试完毕。二、实验原理和主要内容1.建立4个元素的顺序表SqList={2,3,4,5},实现顺序表的基本操作;在SqList={2,

2、3,4,5}的元素4与5之间插入一个元素9,实现顺序表插入的基本操作;在SqList={2,3,4,9,5}中删除指定位置(i=3)上的元素,实现顺序表删除的操作。2.利用顺序表完成一个班级的一个学期的课程的管理:能够增加、删除、修改学生的成绩记录。三、主要仪器设备PC机,WindowsXP操作平台,VisualC++四、调试分析学生课程管理系统的调试过程中发现一些错误,主要是参数设置的问题,经过修改,错误得到排除。五、测试结果1.顺序表2.学生课程管理系统附录(源程序)1.顺序表的操作#include#d

3、efineTRUE1#defineFALSE0#defineOK1#defineERROR0#defineINFEASIBLE-1#defineOVERFLOW-2typedefintStatus;typedefintElemType;#defineLIST_INIT_SIZE10#defineLISTINCREMENT2typedefstructshunxubiao{ElemType*list;intsize;intMaxsize;}SqList;intInitList_Sq(SqList&L){//构造一个空的线性表L。L.l

4、ist=newElemType[LIST_INIT_SIZE];if(!L.list)returnOVERFLOW;//存储分配失败L.size=0;//长度为0L.Maxsize=LIST_INIT_SIZE;//初始存储容量returnOK;}//InitList_SqintInsertList_Sq(SqList&L,inti,ElemTypee){ElemType*p,*q;if(i<1

5、

6、i>L.Maxsize+1)returnERROR;q=&(L.list[i-1]);//q指示插入位置for(p=&(L.list[

7、L.Maxsize-1]);p>=q;--p)*(p+1)=*p;//插入位置及之后的元素右移*q=e;//插入e++L.size;//表长增1returnOK;}//ListInsert_SqintLocateElem_Sq(SqListL,ElemTypee){//在顺序表中查询数据元素e,若存在,则返回它的位序,否则返回0inti=1;//i的初值为第1元素的位序ElemType*p=L.list;//p的初值为第1元素的存储位置while(i<=L.size&&*p!=e){++i;++p;}if(i<=L.size)re

8、turni;elsereturn0;}StatusInsertList_Sq(SqList&L,ElemTypee,ElemTypef,ElemTypeg){inti=LocateElem_Sq(L,e);intj=LocateElem_Sq(L,f);if(i==j-1){InsertList_Sq(L,j,g);returnOK;}elsereturnERROR;}intGetList_Sq(SqListL,inti){if(i>0&&i<=L.size){returnL.list[i];}elsereturnERROR;}S

9、tatusListDelete_Sq(SqList&L,inti,ElemType&e){ElemType*p,*q;if((i<1)

10、

11、(i>L.Maxsize))returnERROR;p=&(L.list[i-1]);//p为被删除元素的位置e=*p;//被删除元素的值赋给eq=L.list+L.size-1;//表尾元素的位置for(++p;p<=q;++p)*(p-1)=*p;//被删除元素之后的元素左移--L.size;//表长减1returnOK;}//ListDelete_SqvoidCreate_Sq(SqLis

12、t&L){cout<<"创建顺序表"<>count;for(inti=0;i>L.list[i

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

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

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