请问我有一个未知大小的数组,我该如何去定义他呢?这个数组,只有当我一个一个输入数字,输入完之后,根据我的输入才能知道有几个数字,我该如何去定义他呢?
还有就是如果我想逐个把数字放在一个已知大小的数组的对应数字的位置内,只有一个位置没有放,我该怎么找出没有放的那个位置呢?
望采纳
#include <stdio.h>
#include <stdlib.h>
int main(void) {
int n;
printf("Enter the number of elements in the array: ");
scanf("%d", &n);
int *arr = malloc(n * sizeof(int));
if (arr == NULL) {
printf("Error allocating memory for array!\n");
return 1;
}
// 使用 arr 数组
free(arr);
return 0;
}
#define N 10
int main(void) {
int arr[N] = {0}; // 将数组初始化为 0
int i;
for (i = 0; i < N; i++) {
if (arr[i] == 0) {
printf("Found empty position at index %d\n", i);
break;
}
}
if (i == N) {
printf("Array is full!\n");
}
return 0;
}