实验报告一 顺序表的操作

实验报告一 顺序表的操作

ID:44191889

大小:17.73 KB

页数:6页

时间:2019-10-19

实验报告一 顺序表的操作_第1页
实验报告一 顺序表的操作_第2页
实验报告一 顺序表的操作_第3页
实验报告一 顺序表的操作_第4页
实验报告一 顺序表的操作_第5页
资源描述:

《实验报告一 顺序表的操作》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、《数据结构》实验报告一系别:班级:学号:姓名:日期:指导教师:一、上机实验的问题和要求:顺序表的查找、插入与删除。设计算法,实现线性结构上的顺序表的产生以及元素的查找、插入与删除。具体实现要求:从键盘输入10个整数,产生顺序表,并输入结点值。从键盘输入1个整数,在顺序表中查找该结点的位置。若找到,输出结点的位置;若找不到,则显示“找不到”。从键盘输入2个整数,一个表示欲插入的位置i,另一个表示欲插入的数值x,将x插入在对应位置上,输出顺序表所有结点值,观察输出结果。从键盘输入1个整数,表示欲删除结点的位置,输出

2、顺序表所有结点值,观察输出结果。二、程序设计的基本思想,原理和算法描述:(包括程序的结构,数据结构,输入/输出设计,符号名说明等)三、源程序及注释:#include/*顺序表的定义:*/#defineListSize100/*表空间大小可根据实际需要而定,这里假设为100*/typedefintDataType;/*DataType可以是任何相应的数据类型如int,float或char*/typedefstruct{DataTypedata[ListSize];/*向量data用于存放表结点*

3、/intlength;/*当前的表长度*/}SeqList;/*子函数的声明*/voidCreateList(SeqList*L,intn);/*创建顺序表函数*/intLocateList(SeqListL,DataTypex);/*查找顺序表*/voidInsertList(SeqList*L,DataTypex,inti);/*在顺序表中插入结点x*/voidDeleteList(SeqList*L,inti);/*在顺序表中删除第i个结点*/voidPrintList(SeqListL,intn);/*

4、打印顺序表中前n个结点*/voidmain(){SeqListL;intn=10,x,i;/*欲建立的顺序表长度*/L.length=0;/*调用创建线性表函数*/printf("createfunction:");CreateList(&L,n);/*建立顺序表*/PrintList(L,n);/*打印顺序表*//*调用查找函数*/printf("searchfunction:");printf("inputthedatayouwanttosearch:");scanf("%d",&x);i=Loca

5、teList(L,x);/*顺序表查找*/if(i==0)printf("sorry,don'tfind%d!",x);elseprintf("ihavefindthe%d,itlocatein%d!",x,i);/*调用插入函数*/printf("Insertfunction:");printf("输入要插入的位置:(inputtheposition:)");scanf("%d",&i);printf("输入要插入的元素:(inputthedata:)");scanf("%d",&x);I

6、nsertList(&L,x,i);/*顺序表插入*/PrintList(L,n);/*打印顺序表*//*调用删除函数*/printf("deletefunction:");printf("输入要删除的位置:(inputtheposition:)");scanf("%d",&i);DeleteList(&L,i);/*顺序表删除*/PrintList(L,n);/*打印顺序表*/}/*顺序表的建立:*/voidCreateList(SeqList*L,intn){inti;for(i=0;i

7、printf("inputthe%ddata:",i+1);scanf("%d",&(*L).data[i]);}(*L).length=n;}/*顺序表的查找:*/intLocateList(SeqListL,DataTypex){inti=0;while(i

8、入L所指的顺序表的第i个结点的位置上*/intj;if(i<0

9、

10、i>(*L).length){printf("插入位置非法");exit(0);}if((*L).length>=ListSize){printf("表空间溢出,退出运行");exit(0);}for(j=(*L).length-1;j>=i-1;j--)(*L).data[j+1]=(*L).data[j];/*顺序表

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

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

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