好文档 - 专业文书写作范文服务资料分享网站

顺序表基本操作的实现

天下 分享 时间: 加入收藏 我要投稿 点赞

精品文档

1、顺序表基本操作的实现

[问题描述] 在顺序表中查找值为x的元素的位置,在线性表的某个位置插入一个元素,删除线性表某个位置的元素。

[基本要求] 要求建立生成顺序表,可以键盘上读取元素,用顺序存储结构实现存储。

[实现提示] 要实现基本操作,可用实现的基本操作,也可设计简单的算法实现。 [建议步骤]

1)建立顺序表的存储结构;

2)利用1)的存储结构建立有实际数据的数据表; 3)实现查找操作; 4)实现插入操作; 5)实现删除操作。

6)写出main函数测试上述操作。

实验源码: #include #define MAX 300 typedef int ElemType; typedef struct {

ElemType data[MAX]; int length;

}SqList;

可修改

精品文档

SqList L;

//打印菜单 void menu() { }

//初始化表,置表长为0 void Init(SqList *L) { }

可修改

printf(\ printf(\ 顺序表操作的验证实验\\n\

printf(\ printf(\ 1、初始化表\\n\ printf(\ 2、创建表\\n\ printf(\ 3、按值查询\\n\

printf(\ 4、在指定位置插入一个元素\\n\ printf(\ 5、删除指定位置上的一个元素\\n\ printf(\ 6、输出表\\n\ printf(\ 0、退出\\n\

printf(\

L->length=0;

精品文档

//创建表

void Creat(SqList *L) {

int n,i;

printf(\请确定表的长度:\ scanf(\ L->length=n;

printf(\请输入数据元素:\\n\

for(i=1;i<=n;i++) }

//显示列表 void PrintL(SqList *L) {

int i;

if(L->length==0) else {

printf(\空表,请首先创建表!\\n\

scanf(\

printf(\按任意任意键继续...\\n\ getch();

可修改

精品文档

}

printf(\当前表元素是:\\n\ for(i=1;i<=L->length;i++) { }

printf(\ \ if(i==0) printf(\

printf(\ }

printf(\按任意任意键继续...\\n\ getch();

//按值查询 void Search(SqList *L) {

int i,x;

printf(\请输入要查询元素的值:\ scanf(\

for(i=1;i<=L->length&&L->data[i]!=x;i++); if(i<=L->length)

printf(\元素%d第一次出现在表中第%d个位置上!\\n\

else printf(\表中没有元素 %d !\\n\ printf(\

可修改

精品文档

}

printf(\按任意任意键继续...\\n\ getch();

//在指定位置上插入一个元素 void Insert(SqList *L) {

int i,j,x;

printf(\请确定要插入的位置:\ scanf(\

printf(\请输入要插入的元素值:\

scanf(\ if(L->length>MAX) { }

if(i<1||i>L->length+1) else {

for(j=L->length;j>=i;j--)

L->data[j+1]=L->data[j];

可修改

printf(\表满!\\n\ return;

printf(\位置错!\\n\

顺序表基本操作的实现

精品文档1、顺序表基本操作的实现[问题描述]在顺序表中查找值为x的元素的位置,在线性表的某个位置插入一个元素,删除线性表某个位置的元素。[基本要求]要求建立生成顺序表,可以键盘上读取元素,用顺序存储结构实现存储。[实现提示]要实现基本操作,可用实现的基本操作,也可设计简单的算法实现。[建议步骤]1)建立顺
推荐度:
点击下载文档文档为doc格式
88xcr26xk84x67j2pwjr92i2p9mey901drx
领取福利

微信扫码领取福利

微信扫码分享