用c语言实现顺序表的创建,以及输出,顺序表的内容可以自己输入
时间: 2024-09-22 21:02:43 浏览: 31
c语言实现顺序表的基本操作
在 C 语言中,我们可以使用数组来实现顺序表,因为数组提供了一种连续存储数据的方式。以下是一个简单的顺序表(数组)的创建、输入和输出的例子:
首先,我们需要定义一个结构体表示顺序表的元素:
```c
#include <stdio.h>
typedef struct {
int data; // 数据域
int size; // 容量
int capacity; // 当前元素的数量
} SequenceList;
```
接着,我们可以编写函数来实现顺序表的操作:
1. 创建顺序表(初始化):
```c
SequenceList create_list(int capacity) {
SequenceList list;
list.data = malloc(capacity * sizeof(int));
list.size = 0;
list.capacity = capacity;
return list;
}
// 用户输入数据
void input_sequence(SequenceList* list) {
int i;
printf("Enter number of elements: ");
scanf("%d", &i);
for (int j = 0; j < i; j++) {
int item;
printf("Enter element %d: ", j+1);
scanf("%d", &item);
list->data[j] = item;
list->size++;
}
}
```
2. 输出顺序表内容:
```c
void print_sequence(const SequenceList& list) {
printf("Sequence List:\n");
for (int i = 0; i < list.size; i++) {
printf("%d ", list.data[i]);
}
printf("\n");
}
```
现在你可以结合这些函数来创建、输入和输出一个顺序表:
```c
int main() {
SequenceList list = create_list(5); // 创建一个容量为5的列表
input_sequence(&list); // 输入数据
print_sequence(list); // 输出数据
free(list.data); // 清理内存
return 0;
}
```
用户可以按照提示输入数据,程序会打印出输入的顺序表内容。
阅读全文