实验一-线性表的顺序存储和应用

实验一-线性表的顺序存储和应用

ID:43187193

大小:130.05 KB

页数:10页

时间:2019-09-28

实验一-线性表的顺序存储和应用_第1页
实验一-线性表的顺序存储和应用_第2页
实验一-线性表的顺序存储和应用_第3页
实验一-线性表的顺序存储和应用_第4页
实验一-线性表的顺序存储和应用_第5页
资源描述:

《实验一-线性表的顺序存储和应用》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、实验一线性表的顺序存储及应用【实验目的】•深入了解线性表的顺序存储结构•在顺序存储结构上进行插入、删除等操作•利用顺序表解决实际应用问题【实验内容】1・建立顺序表。在键盘上读入元素,用顺序存储实现存储。2・实现顺序表的插入、删除等操作的算法。3■将顺序表逆置。4.将两个有序表合并成一个新的有序表。【程序源代码】#include#include#defineMAXSIZE100typedefintDataType;typedefstruct{DataTypedata[MAXSIZE];i

2、nt1ength;}SqList;//定义顺序表类型voidInitSqList(SqList&L);//自定义函数的声明voidInputSqList(SqList&L);voidInscrtSqList(SqList&L,inti,DataTypex);voidDeleteSqUst(SqList&L,inti);voidSortSqList(SqList&L);intLocationSqList(SqList&DataTypex);voidReverseSqList(SqList&L);voidMerge(SqLis

3、t&A,SqList&B,SqList&C);intmain()!inti;//函数中作为位序的形参DataTypex;〃函数屮作为元素值的形参SqListA,B,C;InitSqList(A);//初始化3个顺序表InitSqList(B);InitSqList(C);printf("顺序表A的输入");InputSqList(A);//调用函数输入顺序表Aprintf(/z顺序表B的输入rT);TnputSqUst(B);printfC输出表A");OutputSqList(A);//调用函数输出顺序表Apr

4、intf(z/输出表BrT);OutputSqList(B);printfC请输入在表A要插入元素的序位和值:〃);scanf(,z%d%d,z,&i,&x);InsertSqList(A,i,x);//调用函数在顺序表八位序为i的位置上插入值为x元素printf(z,输出插入新值后的表A:rT);printfC输入在表A要删除元素的序位scanf("%d〃,&i);DeleteSqList(A,i);printfC输出删除第%d个元素后的表A:〃,i);OutputSqList(A);printf(z/请输入在表

5、A要查找元素值:");scanf("%d",&x);i=LocationSqList(A,x);//在表A中获取值为x的位序,将其赋值给i并判断if(i!=-l)printfC表A的第%d个元素的值为%d",i,x);elseprintf("值为闹的元素在表A不存在",x);SortSqList(A);SortSqList(B);Merge(A,B,C);printfC输出表A和表B合成的有序顺序表C〃);OutputSqList(C);ReverseSqList(A);printfC输出转置后的表A『);O

6、utputSqList(A);return0;}voidInitSqList(SqList&L)//顺序表的初始化{L.length=0;}printfC输入元素的个数:〃);intn;scanf("%2d",&n);DataTypex;printfC输入的各个元素值:〃);for(inti二0;i〈n;i++)!scanf("%2d",&x);L.data[i]=x;}L.lengthen;}voidOutputSqList(SqList&L)〃输出顺序表所有元素{inti;for(i=0;i

7、{printf("%dt",L.data[i]);}printf(〃〃);voidInsertSqList(SqList&L,inti,DataTypex)//在第i个位置插入值为x的元素{intj;if(L.length二二MAXSIZE)printfC顺序表是满的,无法插入元素!〃);exit(1);}if(i

8、Ii>L.length+1){printf(,z指定的插入位置不存在!");exit(1);}for(j=L.length-1;j>=i-l;j—){L.data[j+l]=L.data[j]

9、;}L.data[i-l]=x;L.length++;JvoidDeleteSqUst(SqList&L,inti)〃删除位序为i的元素{if(L.length==0)!printfC顺序表是空的,无法删除元素!〃);exit(1);}if(i

10、i>L.length)!printfC指定的

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

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

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