给定一个包含非负整数的mxn网格c语言实现
时间: 2024-01-19 09:03:32 浏览: 153
以下是一个简单的C语言实现,其中我们使用了动态分配的二维数组来表示网格:
```c
#include <stdio.h>
#include <stdlib.h>
int main() {
int m, n;
printf("请输入网格的行数和列数:");
scanf("%d%d", &m, &n);
// 动态分配二维数组
int **grid = (int **)malloc(m * sizeof(int *));
for(int i = 0; i < m; i++) {
grid[i] = (int *)malloc(n * sizeof(int));
}
// 输入网格中的数字
printf("请输入网格中的数字:\n");
for(int i = 0; i < m; i++) {
for(int j = 0; j < n; j++) {
scanf("%d", &grid[i][j]);
}
}
// 输出网格中的数字
printf("网格中的数字为:\n");
for(int i = 0; i < m; i++) {
for(int j = 0; j < n; j++) {
printf("%d ", grid[i][j]);
}
printf("\n");
}
// 释放动态分配的内存
for(int i = 0; i < m; i++) {
free(grid[i]);
}
free(grid);
return 0;
}
```
在此实现中,我们首先从标准输入中读取网格的行数和列数,然后通过动态分配二维数组来创建一个mxn的网格。接下来,我们从标准输入中读取网格中的数字,并将它们存储在动态分配的数组中。最后,我们输出网格中的数字,并释放动态分配的内存。
阅读全文