C语言创建一个顺序表并添加五个值
时间: 2024-09-19 14:12:21 浏览: 23
在C语言中,我们可以使用数组或者结构体结合动态内存分配来创建一个简单的顺序表(也称为线性表)。这里我们先创建一个结构体作为元素类型,并演示如何动态添加五个值:
```c
#include <stdio.h>
#include <stdlib.h>
// 定义元素结构体
typedef struct {
int value;
} Node;
// 定义顺序表结构体
typedef struct List {
Node* head; // 链表头指针
int size; // 链表大小
} List;
// 创建新节点
Node* create_node(int val) {
Node* new_node = (Node*)malloc(sizeof(Node));
if (new_node != NULL) {
new_node->value = val;
}
return new_node;
}
// 添加元素到列表尾部
void append(List* list, int val) {
Node* new_node = create_node(val);
if (list->head == NULL) { // 列表为空,设置头节点
list->head = new_node;
list->size = 1;
} else {
Node* current = list->head;
while (current->next != NULL) {
current = current->next;
}
current->next = new_node;
list->size++;
}
}
int main() {
List my_list;
my_list.head = NULL;
my_list.size = 0;
// 添加五个值
for (int i = 1; i <= 5; i++) {
append(&my_list, i);
printf("Added %d to the list.\n", i);
}
return 0;
}