如何用C写二维数组并赋初始值零0
时间: 2024-10-11 22:07:16 浏览: 85
在C语言中,你可以使用动态内存分配来创建一个二维数组并初始化所有元素为零。以下是一个简单的例子:
```c
#include <stdio.h>
#include <stdlib.h>
#define ROWS 5 // 行数
#define COLS 4 // 列数
int main() {
int **array; // 定义指向指针的指针
int i, j;
// 分配空间给二维数组
array = (int **)malloc(ROWS * sizeof(int *));
for (i = 0; i < ROWS; ++i) {
array[i] = (int *)malloc(COLS * sizeof(int)); // 每行分配空间
}
// 初始化所有元素为0
for (i = 0; i < ROWS; ++i) {
for (j = 0; j < COLS; ++j) {
array[i][j] = 0; // 对每行的每个元素赋值为0
}
}
// 打印数组
for (i = 0; i < ROWS; ++i) {
for (j = 0; j < COLS; ++j) {
printf("%d ", array[i][j]);
}
printf("\n");
}
// 释放内存
for (i = 0; i < ROWS; ++i) {
free(array[i]);
}
free(array);
return 0;
}
```
在这个示例中,我们首先创建了一个可以指向整型数组的一维数组`array`,然后为每一行动态分配了内存,并将所有元素设置为0。最后,记得在程序结束时通过`free`函数释放之前分配的内存。
阅读全文