c语言数据结构顺序表教学教材

上传人:go****e 文档编号:137375184 上传时间:2020-07-07 格式:DOC 页数:8 大小:23.50KB
返回 下载 相关 举报
c语言数据结构顺序表教学教材_第1页
第1页 / 共8页
c语言数据结构顺序表教学教材_第2页
第2页 / 共8页
c语言数据结构顺序表教学教材_第3页
第3页 / 共8页
c语言数据结构顺序表教学教材_第4页
第4页 / 共8页
c语言数据结构顺序表教学教材_第5页
第5页 / 共8页
点击查看更多>>
资源描述

《c语言数据结构顺序表教学教材》由会员分享,可在线阅读,更多相关《c语言数据结构顺序表教学教材(8页珍藏版)》请在金锄头文库上搜索。

1、c语言数据结构顺序表精品文档数据结构上机实验 课后练习报告姓名:冯天明学号:班级:通信1412015年9月28日星期一1、实验一:编写一个程序,实现顺序表的各种基本运算,并在此基础上设计一个主程序完成以下功能。1.初始化顺序表L2.依次采用尾插法或者头插法插入元素a,b,c,d,e3.输出顺序表L4.输出顺序表的长度5.判断顺序表是否为空6.输出顺序表的第四个元素7.输出元素a的位置8.在第三个元素位置插入元素f9.输出顺序表L10.删除顺序表L的第四个元素11.输出顺序表L12.释放顺序表实验代码:#include#include#include#include#define MaxSize

2、 20 /设置顺序表的初始长度#define ListAdd 5 /每次申请增加的内存大小#define OVERFLOW -1 #define OK 0 #define ERROR -2typedef char ElemType;typedef struct /顺序表定义ElemType *elem;int length;/顺序表长度int listsize;/顺序表占用的内存空间SqList;/*初始化顺序表函数*/void InitSq_List(SqList &L)L.elem = new ElemTypeMaxSize; /在堆上申请内存if(!L.elem)exit(OVERFLO

3、W); /内存申请失败L.length = 0;L.listsize = L.length;/*创建一个顺序表*/void GreatSqList(SqList &L,int n)int i;for(i = 0;i n;i+) /依次输入顺序表内容scanf(%c,&L.elemi);fflush(stdin);+L.length;/*销毁顺序表*/void DeatrotSqList(SqList &L)delete L.elem; /释放指针指向的内存L.length = 0;L.listsize = 0;/尾插法插入元素int SqList_Inser(SqList &L,int i,E

4、lemType e)int j;ElemType *p;if(iL.length + 1) /插入位置非法则退出return ERROR;if(L.length = L.listsize) /如果初始化申请的空间已满,则重新申请p = (ElemType *)realloc(L.elem,(L.listsize+ListAdd) * sizeof( ElemType );if(!p) return OVERFLOW;L.elem = p;L.listsize += ListAdd;for(j=L.length - 1;j=i-1;j-)L.elemj+1 = L.elemj; /元素依次往后移

5、覆盖,实现删除L.elemi-1 = e;+L.length; return OK;/*判断顺序表是否为空*/int ListEmpty(SqList &L)return (L.length = 0);/*获取顺序表长度*/int getList_Len(SqList &L)return L.length;/*取出对应下标元素*/int getIndex(SqList L,char elem)int index = 0;while(index=L.length | indexL.length | n1)return ERROR;for(j = n-1;jL.length;j+)L.elemj

6、= L.elemj+1;return OK;/*输出顺序表的内容*/void DisPlay_SqList(SqList L)int i;if(ListEmpty(L)return ; for(i=0;iL.length;i+)printf(%4c,L.elemi);printf(n);/*主函数*/int main()SqList L; /定义一个顺序表对象ElemType e,elem;int index;int length = 0;InitSq_List(L);printf(初始化顺序表:n);GreatSqList(L,5);printf(顺序表L为:);DisPlay_SqList

7、(L);length = getList_Len(L);printf(顺序表的长度为:%dn,length);if(ListEmpty(L)printf(顺序表为空!n);else printf(顺序表不为空!n);elem = LocateElem(L,1);e = LocateElem( L, 4);printf(第四个元素为: %cn,e);index = getIndex(L,elem);printf(元素 %c 的位置是第 %d 个n,elem,index);printf(在第三个位置插入元素 f:);SqList_Inser(L,3,f);DisPlay_SqList(L);DleteElem(L,4);printf(删除第四个元素:);DisPlay_SqList(L);DeatrotSqList(L);return 0;收集于网络,如有侵权请联系管理员删除

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 幼儿/小学教育 > 其它小学文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号