ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

老鼠走迷宫

2019-02-06 19:39:19  阅读:302  来源: 互联网

标签:老鼠 int migo 迷宫 flag && find


#include<iostream>
using namespace std;

int migo[7][7]={
{2, 2, 2, 2, 2, 2, 2},
{2, 0, 0, 0, 0, 0, 2},
{2, 0, 2, 0, 2, 0, 2},
{2, 0, 0, 0, 0, 2, 2},
{2, 2, 0, 2, 0, 2, 2},
{2, 0, 0, 0, 0, 0, 2},
{2, 2, 2, 2, 2, 2, 2}};//迷宫图

int startX=1,startY=1;
int endX=5,endY=5;

int flag=0;

int find(int x,int y)
{
    migo[x][y]=1;
    if(x==endX&&y==endY)
        flag=1;
    if(migo[x][y+1]==0&&flag!=1) 
        find(x,y+1);
    if(migo[x][y-1]==0&&flag!=1)
        find(x,y-1);
    if(migo[x+1][y]==0&&flag!=1)
        find(x+1,y);
    if(migo[x-1][y]==0&&flag!=1)
        find(x-1,y);
    if(flag!=1)
        migo[x][y]=0;
    return flag;
}
View Code
int main(int argc, char **argv)
{
    int i,j;
    printf("显示迷宫:\n");
    for(i=0;i<7;i++)
    {
      for(j=0;j<7;j++)
       if(migo[i][j]==2)
        printf("█");
       else
        printf(" ");
       printf("\n");
    }
    
     if(find(startX,startY)==0)
     {
      printf("\n没有找到出口!\n");
     }
     else
     {
      printf("\n显示路径:\n");
      for(i=0;i<7;i++)
      {
       for(j=0;j<7;j++)
       {
        if(migo[i][j]==2)
         printf("█");
        else if(migo[i][j]==1)
         printf("*");
        else
         printf(" ");
       }
       printf("\n");
      }
     }
     return 0;
}
View Code

 

标签:老鼠,int,migo,迷宫,flag,&&,find
来源: https://www.cnblogs.com/helloworld2019/p/10353957.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有