数据结构线性表的基本操作及应用实验报告

数据结构线性表的基本操作及应用实验报告

ID:30867723

大小:223.80 KB

页数:20页

时间:2019-01-03

数据结构线性表的基本操作及应用实验报告_第1页
数据结构线性表的基本操作及应用实验报告_第2页
数据结构线性表的基本操作及应用实验报告_第3页
数据结构线性表的基本操作及应用实验报告_第4页
数据结构线性表的基本操作及应用实验报告_第5页
资源描述:

《数据结构线性表的基本操作及应用实验报告》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、实验日期2010419教师签字成绩实验报告【实验名称】【实验目的】第二章线性表的基本操作及应用(1)熟练掌握线性表的基木操作的实现;(2)以线性表的各种操作(建立、插入、删除等)的实现为重点;(3)通过本次实验加深对C语言的使用(特别是函数的参数调用、指针类型的应用和链表的建立等各种基本操作)。【实验内容】1.顺序表的基本操作(顺序表的插入、访问、删除操作)#include#include#defineOK1#defineERROR0#defineOVERFLOW-1typedefintElemType;typedefint

2、Status;#defineLIST_INIT_SIZE100#defineLISTINCREMENT10typedefstruct{ElemType*elem;intlength;intlistsize;JSqList;StatusInitList_Sq(SqList*L){inti,n;L->elem=(ElemType*)malloc(LIST_INIT_SIZE*sizeof(ElemType));讦(!L->elem)exit(OVERFLOW);printfC*您希望您的顺序表有几个元素:”);scanf("%d",&n);printf(HH);

3、printf(”输入您的%4个元素,以构建顺序表:H,n);for(i=l;i<=n;i++)scanf(n%dH,&L->elem[M]);L->length=n;L->listsize=LIST_INIT_SIZE;returnOK;}//InitList_SqStatusPrintList_Sq(SqListL){inti;printfCJ®序表中的元素为:");for(i=l;i<=L.length;i++)printf("%d",L.elem[i-l]);printf(nu);returnOK;}//PrintList_SqintListIns

4、ert_Sq(SqList*L,inti,ElemTypex)//对顺序表进彳亍插入操作{intj;讦(L・>length==L・>listsize){printf(°ttt顺序表已满");return0;}else{讦(iL->length){printf(nttt位置不合法”);return0;}else{for(j=L・>length・1;j>=i-lj)L->elem[j+1]=L->elem[j];L->elem[i-ll=x;L->length4-+;return1;}}}intListDelete_Sq(SqList*L,i

5、nti)//对顺序表进行删除操作{intj;if(iL->length){printf(Httt不存在第i个元素H);return0;}else{for(j=i-l;jlength;j++)L->elem[j]=L->elem[j+l];L->length—;return1;}}intLocateElem(SqList*L,inti){if(iL->length)returnERROR;elsereturnL->elem[i-l];}intscan(){intchoose;prinlf(”选择要执行的基本操作:l.插入元

6、素;2.删除元素;3.访问元素.”);printf(”输入其他值退出程序……n);scanf(n%d",&choose);return(choose);voidmain(){SqListL;ElemTypee;inti;intquit=0;if(InitList_Sq(&L)==OVERFLOW)printfC分配失密,退出程序!”);printf(”输出程序中的元素”);PrintList_Sq(L);while(!quit)switch(scan()){casel:printf("请输入你所需要插入的位置和你要插入的元索:”);printf(

7、"请输入i和e的值:”);scanf(H%d%dH,&i,&e);if(ListInsert_Sq(&L,i,e)==OK)PrintList_Sq(L);break;case2:printf("请输入你所需要删除元素Wj位置:”);scanf("%d",&i);if(ListDelete_Sq(&L,i)==OK)PrintList_Sq(L);break;case3:printf("请输入所要查找元素的位置:”);scanf(”%d“,&i);if(LocateElem(&L,i))printfC*该位置元素禹值为:%d!H,LocateEl

8、em(&L,i));el

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

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

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