#include <stdio.h>
#include <stdlib.h>
#include <windows.h>
int main()
{
char a[50][50]={
"##########",//x=0
"# # #",//x=1
"# ## # # #",//x=2
"# # # # #",//x=3
"##O# # #",//x=4
"####### #",//x=5
"#*$$###$##",//x=6
"###$$$$$##",//x=7
"##########",//x=8
//y=0123456789
};
int i,x,y,p,q;
char ch;
x=4; y=2; p=6; q=1;
for(i=0;i<=9;i++)
puts(a[i]);
while(x!=p||y!=q)
{
ch=getch();
if(ch=='x')
{
if(a[x+1][y]!='#')
{
a[x][y]=' ';
x++;
a[x][y]='O';
}
}
if(ch=='s')
{
if(a[x-1][y]!='#')
{
a[x][y]=' ';
x--;
a[x][y]='O';
}
}
if(ch=='z')
{
if(a[x][y-1]!='#')
{
a[x][y]=' ';
y--;
a[x][y]='O';
}
}
if(ch=='y')
{
if(a[x][y+1]!='#')
{
a[x][y]=' ';
y++;
a[x][y]='O';
}
}
system("cls");
for(i=0;i<=9;i++)
puts(a[i]);
}
system("cls");
printf("You win!\n");
Sleep(5000);
return 0;
}
在写走迷宫时,我发现两个报错:
[table id=10 /]
我在搜索引擎中搜索错误相关解决方案,得到一篇文章:
网址:https://zhidao.baidu.com/question/473429218
我仔细阅读后发现,为了让C编译器支持getch函数,必须添加一个头文件:
#include <conio.h>
加上头文件后重新编译运行,发现一切正常。