写一段代码,根据用户输入的行数和列数用C语言制作一张n*m含有k个障碍的地图,并放在数组中
时间: 2023-08-31 14:38:56 浏览: 53
### 回答1:
#include <stdio.h>
#include <stdlib.h>int main(int argc, char* argv[])
{
int n, m, k; //行数、列数、障碍数
printf("请输入行数:");
scanf("%d", &n);
printf("请输入列数:");
scanf("%d", &m);
printf("请输入障碍数:");
scanf("%d", &k);
int map[n][m]; //定义数组
int i, j;
for(i=0; i<n; i++) //初始化数组
{
for(j=0; j<m; j++)
{
map[i][j] = 0; //默认每格都没有障碍
}
}
int x, y;
for(i=0; i<k; i++) //把障碍放入数组
{
printf("请输入第%d个障碍的位置:", i+1);
scanf("%d %d", &x, &y);
map[x][y] = 1; //将指定位置设置为障碍
}
printf("地图制作完成!");
return 0;
}
### 回答2:
下面是用C语言编写的根据用户输入的行数和列数制作地图,并在其中随机放置k个障碍的代码:
```c
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
void generateMap(int n, int m, int k, int map[][m]) {
srand(time(NULL)); // 初始化随机数种子
// 先将地图全部设置为0,表示无障碍
for (int i = 0; i < n; i++) {
for (int j = 0; j < m; j++) {
map[i][j] = 0;
}
}
// 随机放置k个障碍
for (int i = 0; i < k; i++) {
int row = rand() % n; // 随机行索引
int col = rand() % m; // 随机列索引
map[row][col] = 1; // 将障碍设置为1
}
}
int main() {
int n, m, k;
printf("请输入地图行数:");
scanf("%d", &n);
printf("请输入地图列数:");
scanf("%d", &m);
printf("请输入障碍数:");
scanf("%d", &k);
int map[n][m];
generateMap(n, m, k, map);
// 打印地图
printf("生成的地图:\n");
for (int i = 0; i < n; i++) {
for (int j = 0; j < m; j++) {
printf("%d ", map[i][j]);
}
printf("\n");
}
return 0;
}
```
用户可以按照提示输入地图的行数、列数和障碍数,代码会根据用户输入的数据生成对应的地图,并将地图打印出来。其中,0表示无障碍,1表示有障碍。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://img-home.csdnimg.cn/images/20210720083646.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![c](https://img-home.csdnimg.cn/images/20210720083646.png)
![apk](https://img-home.csdnimg.cn/images/20210720083646.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)