2.已知有线性表LB,其元素与一维数组b[]={2,6,8,9,11,15,20}元素相同, 删除顺序线性表LB中第i(1<=i<=7)个元素,并用e返回其值。
时间: 2023-05-17 21:05:10 浏览: 133
合并线性表(删除相同元素,并排序).rar_数据结构_线性排序
可以使用以下代码实现:
```c
int deleteElem(int *LB, int i, int *e) {
if (i < 1 || i > 7) {
return 0; // i不合法,返回0表示删除失败
}
*e = LB[i - 1]; // 将要删除的元素赋值给e
for (int j = i; j < 7; j++) {
LB[j - 1] = LB[j]; // 将后面的元素向前移动
}
return 1; // 删除成功,返回1
}
```
调用方式如下:
```c
int LB[] = {2, 6, 8, 9, 11, 15, 20};
int e;
if (deleteElem(LB, 3, &e)) {
printf("删除成功,删除的元素为:%d\n", e);
} else {
printf("删除失败,i不合法\n");
}
```
输出结果为:
```
删除成功,删除的元素为:8
```
阅读全文