如果先输入一个n,再输入n个数据该如何用数组实现
时间: 2024-10-27 14:09:54 浏览: 17
JS实现合并两个数组并去除重复项只留一个的方法
在C语言中,如果你先输入一个整数`n`,然后要存储接下来的`n`个数据,你可以使用动态内存分配结合数组的方式来实现。这里有一个简单的示例:
```c
#include <stdio.h>
#include <stdlib.h> // 包含malloc和free函数
int main() {
int n;
printf("请输入你要输入的数据个数(n): ");
scanf("%d", &n); // 获取n的值
// 动态分配n个整数大小的内存
int* data = (int*)malloc(n * sizeof(int));
if (data == NULL) { // 检查内存分配是否成功
printf("内存分配失败!\n");
return 1;
}
// 输入n个数据
for (int i = 0; i < n; i++) {
printf("请输入第 %d 个数字: ", i + 1);
scanf("%d", &data[i]); // 读取并存入数组元素
}
// 打印所有数据
printf("你输入的数组元素是:\n");
for (int i = 0; i < n; i++) {
printf("%d ", data[i]);
}
printf("\n");
// 清理内存
free(data);
return 0;
}
```
在这个例子中,程序首先获取用户输入的`n`,然后为`n`个整数分配内存。接着,循环读取用户输入的数据并存储在数组中。最后,打印数组的内容,并释放之前分配的内存。
阅读全文