怎么先初始化内存再输入数组b
时间: 2024-10-12 14:17:49 浏览: 19
C语言二维数组PPT课件.pptx
5星 · 资源好评率100%
在C语言中,如果你想要先初始化内存然后再输入数组`b`,你可以这样做:
1. **动态内存分配**:
如果数组大小未知或需要在运行时改变,可以使用`malloc`或`calloc`动态分配内存,然后手动初始化每个元素。例如:
```c
int n;
printf("请输入数组长度: ");
scanf("%d", &n); // 获取数组长度
int *b = (int*) malloc(n * sizeof(int)); // 动态分配内存
if (b == NULL) {
perror("Memory allocation failed");
exit(1);
}
// 初始化数组
for (int i = 0; i < n; i++) {
b[i] = 0; // 或者你想设定的初始值
}
// 接下来输入数组元素
printf("现在开始输入数组元素:\n");
for (int i = 0; i < n; i++) {
scanf("%d", &b[i]);
}
```
2. **静态数组**:
对于已知大小的固定数组,可以在声明时就初始化所有元素:
```c
const int N = 5; // 假设你知道数组大小为5
int b[N] = {0}; // 初始化为零
// 然后提示用户输入
printf("请输入数组元素:\n");
for (int i = 0; i < N; i++) {
scanf("%d", &b[i]);
}
```
注意,对于静态数组,你无法在运行时改变其大小。
阅读全文