C++:吃豆人加强版1.0

//加强之后,地图更改并新增一条规则:你能用最短的路线让吃豆人吃到豆子么?

//以下是代码:

#include<bits/stdc++.h>
#include<windows.h>
using namespace std;
int main() {
printf("你能用最短的路线让吃豆人吃到豆子么?\n") ;
char mp[7][8]= {
"******",
"*@ *",
"** * *",
"* * *",
"* ** *",
"* .*",
"******",
};
int top=0;
bool l=0;
int x=1,y=1;
for(int i=0;i<=6;i++){
for(int j=0;j<=7;j++){
printf("%c",mp[i][j]);
}
cout<<endl;
}
while(l!=1){
char k;
scanf("%c",&k);
if(k=='s'){
if(mp[x+1][y]=='.'){
l=1;
}
if(mp[x+1][y]!='*'){
mp[x][y]=' ';
x++;
mp[x][y]='@';
top++;
}
}
if(k=='w'){
if(mp[x-1][y]=='.'){
l=1;
}
if(mp[x-1][y]!='*'){
mp[x][y]=' ';
x--;
mp[x][y]='@';
top++;
}
}
if(k=='a'){
if(mp[x][y-1]=='.'){
l=1;
}
if(mp[x][y-1]!='*'){
mp[x][y]=' ';
y--;
mp[x][y]='@';
top++;
}
}
if(k=='d'){
if(mp[x][y+1]=='.'){
l=1;
}
if(mp[x][y+1]!='*'){
mp[x][y]=' ';
y++;
mp[x][y]='@';
top++;
}
}
system("cls");
printf("你能用最短的路线让吃豆人吃到豆子么?\n") ;
for(int i=0;i<=6;i++){
for(int j=0;j<=7;j++){
printf("%c",mp[i][j]);
}
cout<<endl;
}
}
if(top==7)
printf("你获胜了!");
else
printf("不是最短,你失败了!");
return 0;
}

posted @ 2020-08-19 15:31  ✿北辰✿  阅读(1003)  评论(0)    收藏  举报