zoukankan      html  css  js  c++  java
  • 老鼠走迷宫(附上全过程)

    #include <stdio.h>
    #include <stdlib.h>

    void visit(int ,int);

    int maze[9][9] = {
     {2,2,2,2,2,2,2,2,2},
     {2,0,0,0,0,0,0,0,2},
     {2,0,2,2,0,2,2,0,2},
     {2,0,2,0,0,2,0,0,2},
     {2,0,2,0,2,0,2,0,2},
     {2,0,0,0,0,0,2,0,2},
     {2,2,0,2,2,0,2,2,2},
     {2,0,0,0,0,0,0,0,2},
     {2,2,2,2,2,2,2,2,2}
    };

    int startI = 1,startJ = 1;
    int endI = 7,endJ = 7;

    int main(void)
    {
     int i,j;
     printf("显示迷宫 : ");
     for (i = 0 ; i < 9 ; i++)
     {
      for (j = 0 ; j < 9 ; j++)
      {
       if(maze[i][j] == 2){
        printf("▉");
       }else{
        printf("  ");
       }
      }
      printf(" ");
     }
     visit(startI,startJ);

     system("pause");
     return 0;
    }

    void visit(int i,int j)
    {
     int m,n;
     maze[i][j] = 1;

     if (i == endI && j == endJ)
     {
      printf(" 显示路径: ");
      for (m = 0 ; m < 9 ; m++)
      {
       for (n = 0 ; n<9 ; n++)
       {
        if(maze[m][n] == 2){
         printf("█");
        }else if(maze[m][n] == 1)
         printf("◇");
        else
         printf("  ");
       }
       printf(" ");
      }
     }

     if(maze[i][j+1] == 0) visit(i, j+1);
     if(maze[i+1][j] == 0) visit(i+1, j);
     if(maze[i][j-1] == 0) visit(i, j-1);
     if(maze[i-1][j] == 0) visit(i-1, j);

     maze[i][j] = 0;

    }

  • 相关阅读:
    Ubuntu中的vsftpd配置
    Ubuntu学习-增加更新源及安装软件及卸载软件
    Ubuntu16.04下安装sublime text3
    需要读的书
    同一机器 部署 两个 jboss
    log4j 总结 精华
    oracle 笔记
    oracle 用户 多个表空间
    json
    json 基础
  • 原文地址:https://www.cnblogs.com/A922/p/5808271.html
Copyright © 2011-2022 走看看