大家好,我是vc++初学者,想做个老鼠走迷宫的程序,谁能提供源代码?

解决方案 »

  1.   

    这是用c写的源码,用turbo c 2.0编译通过。可以供你参考。#define n 10
    #define l 6
    static char m[l][n]={{'.','l','l','l','l','l','l','l','l','l'},
         {'.','l','.','.','l','.','.','.','l','l'},
         {'.','.','.','l','l','.','l','.','.','l'},
         {'.','l','l','.','.','.','l','l','.','l'},
         {'.','.','.','.','l','.','.','.','.','l'},
         {'l','l','l','l','l','l','l','l','.','.'}};
    /*char m[l][n];*/
    int succ=0;void seekp(i,j)
    { if(i==l-1&&j==n-1)succ=1;
    else
    {
    m[i][j]='o';
    if(!succ&&j<=n-1&&m[i][j+1]=='.')
    seekp(i,j+1);
    if(!succ&&i<=l-1&&m[i+1][j]=='.')
    seekp(i+1,j);
    if(!succ&&j>=0&&m[i][j-1]=='.')
    seekp(i,j-1);
    if(!succ&&i>=0&&m[i-1][j]=='.')
    seekp(i-1,j);
    }
    if(succ)m[i][j]='*';
    }
    main()
    {       int i,j;
    clrscr();
    /*for(i=0;i<l;i++)
    for(j=0;j<n;j++)
    scanf("%c",&m[i][j]);*/
    printf("The Maze:\n");
    for(i=0;i<l;i++)
    for(j=0;j<n;j++)
    { printf(" %c",m[i][j]);
    if(j==(n-1))printf("\n");
    }
    printf("\n");
    seekp(0,0);
    if(succ)
    {       printf("We Leave Out!\n");
    for(i=0;i<l;i++)
    for(j=0;j<n;j++)
    { printf(" %c",m[i][j]);
    if(j==(n-1))printf("\n");
    }
    }
    else printf("error\n\n");
    getch();
    }