c语言建立一个5个元素的顺序表
时间: 2024-09-24 19:02:56 浏览: 53
C语言实现动态顺序表的实现代码
在C语言中,要创建一个包含5个元素的顺序表,通常会使用数组结构。顺序表是一种线性数据结构,其特点是元素按照一定的顺序存储,可以通过索引来访问。这里是一个简单的例子:
```c
#include <stdio.h>
// 定义顺序表的结构体,假设元素类型为int
typedef struct {
int* elements; // 存储元素的指针
int size; // 序列表的大小
int capacity; // 序列表的容量,通常是size+1,预留空间防止插入新元素时报错
} SequenceList;
// 初始化顺序表
void init_list(SequenceList* list) {
list->elements = (int*)malloc(sizeof(int) * (list->capacity));
if (!list->elements) {
printf("内存分配失败!\n");
return;
}
list->size = 0;
}
// 插入元素到列表尾部
void insert(SequenceList* list, int value) {
if (list->size == list->capacity - 1) { // 列表满,需要扩容
list->capacity *= 2;
list->elements = (int*)realloc(list->elements, sizeof(int) * list->capacity);
if (!list->elements) {
printf("内存重新分配失败!\n");
return;
}
}
list->elements[list->size++] = value;
}
// 打印顺序表
void print_list(const SequenceList* list) {
for (int i = 0; i < list->size; i++) {
printf("%d ", list->elements[i]);
}
printf("\n");
}
int main() {
SequenceList my_list;
init_list(&my_list);
// 插入5个元素
insert(&my_list, 1);
insert(&my_list, 2);
insert(&my_list, 3);
insert(&my_list, 4);
insert(&my_list, 5);
// 打印顺序表
print_list(&my_list);
free(my_list.elements); // 释放内存
return 0;
}
```
阅读全文