数据结构线性表实验报告.doc

  1. 1、本文档共12页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数据结构线性表实验报告

实验一 线性表 一、实验目的 掌握实现线性表的基本操作方法; 掌握线性表的基本操作:建表、插入、删除、输出等运算在顺序存储结构和链式存储结构上的实现; 通过本次实习加深对高级语言C语言的使用(特别是函数参数、指针类型、链表的使用)。熟悉线性表的基本运算在两种存储结构(顺序结构和链式结构)上的实现。 二、实验环境 装有VisualC++6.0的普通PC机 源程序 开始#includestring.h 开始 #include stdio.h #include stdlib.h #include conio.h 输入0或非0?#define MaxLine 100 /*顺序存储的最大个数*/ 输入0或非0? typedef int ElemType; 0非0typedef struct SqList 0 非0 { 输入长度8的线性表 ElemType data[MaxLine];/*存放顺序表的数组*/ 输入长度8的线性表 选择操作 int length;/*顺序表的长度*/ 选择操作 } L; /*初始化顺序表*/ 输入长度为8的线性表void InitList(SqListL) 输入长度为8的线性表 { 不为0 不为0 Judge=0否? L.length = 0; Judge=0否? //L.length =0; } 选择操作/*得到顺序表的长度*/ 选择 操作 int GetLength(SqList L) { return L.length; 查找数据进行排序保存数据打印出表显示长度删除数据插入数据} 查找数据 进行排序 保存数据 打印出表 显示长度 删除数据 插入数据 /*得到顺序表中的第i个元素*/ ElemType GetElem(SqList L,int i) 0 结束{ 0 结束 if(i 1 || i L.length) { printf(error); exit(1); } return L.data[i-1]; } void ListInsert(SqList L,int i,ElemType x) /*添加线性表中第i个位置上的元素,i从1开始*/ { int j; if(i 1 || i L.length+1) /*检查添加位置的合法性*/ { printf(error); exit(1); } if(L.length = MaxLine) { printf(overflow!); exit(1); } j = L.length; while(j=i)/*此处语句相对参考语句有较大改变*/ { L.data[j]=L.data[j-1]; j--; } L.data[i-1] = x; L.length++; } void ListDelete(SqList L,int i) /* 删除线性表中第i个位置上的元素 */ { int j; if(i1 || iL.length) /* 检查空表及删除位置的合法性 */ { printf (不存在第i个元素); exit(0); } for(j=i;j=L.length-1;j++) L.data[j-1]=L.data[j]; /* 向前移动元素 */ L.length--; } int main() { FILE *fp; struct SqList A; InitList(A);/*初始化顺序表*/ int Judge2=0; printf( ***线性表操作实验***\n \n\n请输入0对长度为8的线性表输入数据或者其他任意数进行其他操作^_^\n); scanf(%d,Judge2); if(Judge2==0) { int t = 1,d=1; for(t=1;t=8;t++)/*此处为顺序表首先输入8个元素*/ { printf(请输入第%d个线性表元素:,t); scanf(%d,d); ListInsert(A,t,d); } } int Judge=0; printf(输入0结束程序或者输入其他任意数继续对该表进行操作^_^\n); scanf(%d,Judge); while(Judge)/*判断

文档评论(0)

bm5044 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档