用循环创建一个顺序表 c语言
时间: 2024-09-15 12:06:57 浏览: 29
在C语言中,你可以使用`for`循环来动态地创建一个顺序表(数组),也称为线性表。这里是一个基本的例子,展示如何创建一个整型数组并初始化它:
```c
#include <stdio.h>
#define MAX_SIZE 10 // 定义数组的最大大小
int main() {
int sequence[MAX_SIZE]; // 定义顺序表
int i;
printf("Enter %d elements:\n", MAX_SIZE);
for (i = 0; i < MAX_SIZE; i++) { // 循环遍历,用户输入元素
scanf("%d", &sequence[i]); // 输入每个元素
}
// 打印填充后的数组
printf("Sequence: ");
for (i = 0; i < MAX_SIZE; i++) {
printf("%d ", sequence[i]);
}
printf("\n");
return 0;
}
```
在这个例子中,我们首先声明了一个固定大小的数组`sequence`,然后通过`for`循环让用户输入元素,并将它们存储在数组中。最后,再用一个循环打印出整个数组。
相关问题
用C语言创建一个顺序表
下面是用C语言创建一个顺序表的示例代码:
```c
#include <stdio.h>
#include <stdlib.h>
#define MAXSIZE 100 // 定义顺序表的最大长度为100
typedef struct {
int data[MAXSIZE]; // 存储顺序表中的元素
int length; // 存储顺序表的当前长度
} SqList;
SqList* create_sq_list(int arr[], int n)
{
SqList* list = (SqList*)malloc(sizeof(SqList)); // 创建一个空的顺序表
int i;
for (i = 0; i < n; i++) {
list->data[i] = arr[i]; // 将数组中的元素复制到顺序表中
}
list->length = n; // 设置顺序表的长度
return list;
}
void print_sq_list(SqList* list)
{
int i;
for (i = 0; i < list->length; i++) {
printf("%d ", list->data[i]); // 输出顺序表中的元素
}
printf("\n");
}
int main()
{
int arr[] = {5, 8, 3, 6, 2, 1, 9, 4, 7};
int n = sizeof(arr) / sizeof(arr[0]); // 数组长度
SqList* list = create_sq_list(arr, n); // 创建顺序表
print_sq_list(list); // 输出顺序表中的元素
return 0;
}
```
上述代码定义了一个`SqList`结构体,该结构体包含一个整型数组`data`和一个整型变量`length`,分别用于存储顺序表中的元素和顺序表的长度。
在`create_sq_list`函数中,我们首先用`malloc`函数动态分配了一个`SqList`结构体的内存空间,然后将数组中的元素复制到顺序表中,最后设置顺序表的长度,并返回指向顺序表的指针。
在`print_sq_list`函数中,我们通过for循环逐个输出顺序表中的元素。
在`main`函数中,我们定义了一个整型数组`arr`,长度为9。调用`create_sq_list`函数创建顺序表,并调用`print_sq_list`函数输出顺序表中的元素。
用c语言创建一个顺序表,并追加输入元素
好的,以下是用 C 语言创建一个顺序表并追加输入元素的代码:
```c
#include <stdio.h>
#include <stdlib.h>
#define MAX_LENGTH 100 // 定义顺序表的最大长度
int main() {
int my_list[MAX_LENGTH]; // 定义顺序表
int length = 0; // 定义顺序表当前长度
// 循环输入元素,当输入 -1 时结束
while (1) {
int num;
printf("请输入一个整数(输入-1结束):");
scanf("%d", &num);
if (num == -1) {
break;
}
my_list[length] = num;
length++;
}
// 输出顺序表
printf("您输入的元素为:[");
for (int i = 0; i < length; i++) {
printf("%d", my_list[i]);
if (i != length - 1) {
printf(", ");
}
}
printf("]\n");
return 0;
}
```
你可以编译并运行这段代码,跟随提示输入元素,输入 -1 结束输入。程序将会把你输入的元素存储到一个顺序表中,并输出这个顺序表。