线性表实验报告_8.docVIP

  • 3
  • 0
  • 约2.69千字
  • 约 5页
  • 2023-10-11 发布于未知
  • 举报
西安郵電學院 数据结构实验报告 题 目: 线性表的运用 系部名称 : 专业名称 : 班 级 : 学号 : 学生姓名 : 指导教师 : 时间 : 一.实验目的: 熟悉线性表的创建,插入,删除,查找和显示的操作 二.实验内容: 1.题目:使用C语言程序实现线性表的创建,插入,删除,查找和显示的功能 2.代码和结果: #includestdio.h #includemalloc.h #define MaxSize 50 #define OK 1 #define ERROR 0 typedef char ElemType; typedef struct { ElemType elem[MaxSize]; int length; }SqList; /*顺序表类型定义*/ void InitList(SqList * L) /*初始化顺序表L*/ { L=(SqList * )malloc(sizeof(SqList)); L-length=0; } int CreateList(SqList * L,int n) /*录入初数据*/ { int i; printf(输入%d个整数:\n,n); for(i=0;in;i++) scanf(\n%d,L-elem[i]); return OK; } void DestroyList(SqList * L) /*释放顺序表L*/ { free(L); } int ListEmpty(SqList * L) /*判断顺序表L是否为空表*/ { return(L-length==0); } int ListLength(SqList * L) /*返回顺序表L的元素个数*/ { return(L-length); } void DispList(SqList * L) /*输出顺序表*/ { int i; if(ListEmpty(L))return; for(i=0;iL-length;i++) printf(%d,L-elem[i]); printf(\n); } int GetElem(SqList * L,int i,ElemType e) /*获取顺序表L中第i个元素*/ { if(i1||iL-length) return ERROR; else e=L-elem[i-1]; return e; } int LocateElem(SqList * L,ElemType e) /*在顺序表L中查找元素e*/ { int i=0; while(iL-length L-elem[i]!=e) i++; if(i=L-length) return ERROR; else return i+1; } int ListInsert(SqList * L,int i,ElemType e) /*在顺序表L中第i个位置插入元素e*/ { int j; if(i1||iL-length+1) return 0; i--; for(j=L-length;ji;j--) L-elem[j]=L-elem[j-1]; L-elem[i]=e; L-length++; return OK; } int ListDelete(SqList * L,int i,ElemType e) /*顺序表L中删除第i个元素*/ { int j; if(i1||iL-length) return 0; i--; e=L-elem[i]; for(j=i;jL-length-1;j++) L-elem[j]=L-elem[j+1]; L-length--; return OK; } void main() { SqList *L; ElemType e; printf((1)初始化顺序表L\n); InitList(L); int n; printf((2)请输入要录入的元素个数:); scanf(%d

文档评论(0)

1亿VIP精品文档

相关文档