迷宫游戏c++语言代码
时间: 2023-09-01 15:08:43 浏览: 90
以下是一个简单的迷宫游戏的 C++ 代码示例:
```c++
#include <iostream>
#include <vector>
using namespace std;
// 迷宫地图大小
const int ROW = 5;
const int COL = 5;
// 迷宫地图
int maze[ROW][COL] = {
{0, 1, 0, 0, 0},
{0, 1, 0, 1, 0},
{0, 0, 0, 0, 0},
{0, 1, 1, 1, 0},
{0, 0, 0, 1, 0},
};
// 路径
vector<pair<int, int>> path;
// 判断是否可行
bool is_valid(int row, int col) {
if (row < 0 || row >= ROW || col < 0 || col >= COL) {
return false;
}
if (maze[row][col] == 1) {
return false;
}
return true;
}
// 搜索迷宫路径
bool search(int row, int col) {
if (!is_valid(row, col)) {
return false;
}
if (row == ROW - 1 && col == COL - 1) {
path.push_back(make_pair(row, col));
return true;
}
if (search(row + 1, col) || search(row, col + 1)) {
path.push_back(make_pair(row, col));
return true;
}
return false;
}
int main() {
if (search(0, 0)) {
cout << "Path found:" << endl;
for (int i = path.size() - 1; i >= 0; --i) {
cout << "(" << path[i].first << ", " << path[i].second << ")" << endl;
}
} else {
cout << "No path found!" << endl;
}
return 0;
}
```
代码中定义了一个迷宫地图,使用搜索算法在地图上寻找从左上角到右下角的路径,并将路径存储在一个 vector 中。最后输出路径即可。
阅读全文