C语言1.创建一个顺序表 表最大长度20 表中存储data为int类型 表中原始元素1,2,4三个元素 2.表操作 创建一个方法,往顺序表中添加元素 3,5,8 三个元素 创建一个方法,删除元素1,8
时间: 2024-12-20 21:16:25 浏览: 13
在C语言中,你可以使用数组结构来模拟一个简单的顺序表。由于C语言不支持动态内存分配,我们假设表的最大长度是固定的,这里可以创建一个大小为20的数组来表示顺序表。
```c
#include <stdio.h>
// 定义顺序表结构
typedef struct {
int data[20]; // 存储int类型的元素
int size; // 表的实际元素数量
} SeqList;
// 初始化顺序表,包含初始元素1, 2, 4
void init_list(SeqList* list) {
list->size = 0;
list->data[0] = 1;
list->data[1] = 2;
list->data[2] = 4;
}
// 向顺序表中添加元素
void add_element(SeqList* list, int new_data) {
if (list->size < 20) { // 如果还有空间
list->data[list->size] = new_data;
list->size++;
} else {
printf("表已满,无法添加更多元素。\n");
}
}
// 删除指定位置的元素(在这个例子中,索引从0开始)
void delete_element(SeqList* list, int index) {
if (index >= 0 && index < list->size) {
for (int i = index; i < list->size - 1; i++) {
list->data[i] = list->data[i + 1];
}
list->size--;
list->data[list->size] = 0; // 或者设置为某个特殊值,表示空位
} else {
printf("无效的索引,无法删除元素。\n");
}
}
// 示例主函数
int main() {
SeqList my_list;
init_list(&my_list);
// 添加元素 3, 5, 8
add_element(&my_list, 3);
add_element(&my_list, 5);
add_element(&my_list, 8);
// 删除元素 1 和 8
delete_element(&my_list, 0); // 删除第一个元素
delete_element(&my_list, 7); // 删除倒数第二个元素(注意:索引是从0开始计数的)
return 0;
}
```
以上代码展示了如何创建一个顺序表,并实现添加和删除元素的操作。记得在实际应用中处理边界条件和错误情况。如果你有其他关于这个顺序表的问题,请随时提问。
阅读全文