c语言输入一个长度未知的数组
时间: 2023-09-08 18:10:48 浏览: 265
内存空间的动态分配-C语言入门教程
在C语言中,如果要输入一个长度未知的数组,可以使用动态内存分配函数`malloc()`来动态地为数组分配内存。以下是一个示例代码:
```c
#include <stdio.h>
#include <stdlib.h> // 包含动态内存分配函数malloc和free的头文件
int main() {
int len;
int *arr; // 定义指向int类型的指针arr
printf("Please input the length of array:\n");
scanf("%d", &len);
arr = (int *)malloc(len * sizeof(int)); // 动态分配内存
printf("Please input %d integers:\n", len);
for (int i = 0; i < len; i++) {
scanf("%d", &arr[i]); // 依次输入整数
}
printf("The array you input is:\n");
for (int i = 0; i < len; i++) {
printf("%d ", arr[i]); // 输出输入的数组
}
printf("\n");
free(arr); // 释放动态分配的内存
return 0;
}
```
在程序运行时,先输入数组长度,然后输入相应长度的整数,程序会将这些整数存入动态分配的数组中并输出:
```
Please input the length of array:
5
Please input 5 integers:
1 2 3 4 5
The array you input is:
1 2 3 4 5
```
阅读全文