Maze.h
#pragma once
#include<stdio.h>
typedef struct Pos{
int _Row;
int _COL;
}Pos;
typedef struct Maze{
struct Pos pos;
}Maze;
Maze.c
#define _CRT_SECURE_NO_WARNINGS 1
#include<stdlib.h>
#include"Maze.h"
#include"Stack.h"
/*是否能留在地图上*/
int CanStay(Pos* pos) {
if (pos == NULL) {
return;
}
if (pos->_Row < 0 || pos->_COL < 0 ||
pos->_Row > 6 || pos->_COL > 6) {
/*该位置不在地图内*/
return 0;
}
return 1;
}
void Mark(Pos* pos, int Map[7][7], int len) {
if (pos == NULL) {
return;
}
Map[pos->_Row][pos->_COL] = len;
}
/*检查是否可以形成通路*/
int CanWalk(Pos* pos, int Map[7][7], int len_num) {
if (pos == NULL) {
retur