• 大小: 5.05KB
    文件类型: .cpp
    金币: 1
    下载: 0 次
    发布日期: 2021-03-28
  • 语言: 其他
  • 标签: 其他  

资源简介


程序开始运行时显示一个迷宫地图,迷宫中央有一只老鼠,迷宫的右下方有一个粮仓。游戏的任务是使用键盘上的方向键操纵老鼠在规定的时间内走到粮仓处。 要求: ①老鼠形象可辨认,可用键盘操纵老鼠上下左右移动; ②迷宫的墙足够结实,老鼠不能穿墙而过; ③正确检测结果,若老鼠在规定时间内走到粮仓处,提示成功,否则提示失败; ④添加编辑迷宫功能,可修改当前迷宫,修改内容:墙变路、路变墙; ⑤找出走出迷宫的所有路径,以及最短路径。 利用序列化功能实现迷宫地图文件的存盘和读出等功能

资源截图

代码片段和文件信息

#include
#include
#define N 39
#define M 39

int X;
int maze[N+2][M+2];
struct point{
int rowcolpredecessor;
}queue[512];
int head=0tail=0;
void shoudong_maze(int mint n){
int ij;
printf(“\n\n“);
printf(“请按行输入迷宫,0表示通路,1表示障碍:\n\n“);
for(i=0;i for(j=0;j scanf(“%d“&maze[i][j]);
}
void zidong_maze(int mint n){
int ij;
printf(“\n迷宫生成中……\n\n“);
system(“pause“);
for(i=0;i for(j=0;j maze[i][j]=rand()%2;
//由于rand()产生的随机数是从0到RAND_MAX
//RAND_MAX是定义在stdlib.h中的其值至少为32767)
//要产生从X到Y的数只需要这样写:k=rand()%(Y-X+1)+X; 
}
void print_maze(int mint n){
int ij;
printf(“\n迷宫生成结果如下:\n\n“);
printf(“迷宫入口\n“);
printf(“↓“);
for(i=0;i {
printf(“\n“);
for(j=0;j {
if(maze[i][j]==0) printf(“□“);
if(maze[i][j]==1) printf(“■“);}
}
printf(“→迷宫出口\n“);
}
void result_maze(int mint n){
int ij;
printf(“迷宫通路(用“鼠”表示)如下所示:\n\t“);
for(i=0;i {
printf(“\n“);
fo

评论

共有 条评论