顺序表的基本操作代码的主函数
时间: 2023-09-10 19:13:43 浏览: 81
实验2.0_顺序表的实现及基本操作_
以下是基于数组实现的顺序表的基本操作代码的主函数,可以用来测试以上的基本操作:
```
#include <stdio.h>
#include <stdlib.h>
#define MAXSIZE 100
typedef struct {
int data[MAXSIZE];
int length;
} SqList;
void InitList(SqList *L);
int ListLength(SqList L);
int GetElem(SqList L, int i);
int LocateElem(SqList L, int e);
void ListInsert(SqList *L, int i, int e);
int ListDelete(SqList *L, int i);
void ListUpdate(SqList *L, int i, int e);
int main() {
SqList L;
InitList(&L);
printf("初始化顺序表完成,长度为:%d\n", ListLength(L));
for (int i = 1; i <= 10; i++) {
ListInsert(&L, i, i);
}
printf("插入10个元素后,顺序表的长度为:%d\n", ListLength(L));
printf("顺序表的元素依次为:");
for (int i = 1; i <= ListLength(L); i++) {
printf("%d ", GetElem(L, i));
}
printf("\n");
int loc = LocateElem(L, 6);
printf("元素值为6的元素在顺序表中的位置为:%d\n", loc);
ListUpdate(&L, 2, 100);
printf("修改索引为2的元素值为100后,顺序表的元素依次为:");
for (int i = 1; i <= ListLength(L); i++) {
printf("%d ", GetElem(L, i));
}
printf("\n");
int e = ListDelete(&L, 5);
printf("删除索引为5的元素%d后,顺序表的元素依次为:", e);
for (int i = 1; i <= ListLength(L); i++) {
printf("%d ", GetElem(L, i));
}
printf("\n");
return 0;
}
```
在主函数中,先通过`InitList`函数初始化一个空顺序表,然后通过`ListInsert`函数在顺序表中插入10个元素,再通过`GetElem`函数获取顺序表中第i个元素的值,通过`LocateElem`函数查找元素值为e的元素在顺序表中的位置,通过`ListUpdate`函数修改索引为i的元素的值,通过`ListDelete`函数删除索引为i的元素并返回其值。最后,输出修改、删除后的顺序表元素。
阅读全文