C++實現(xiàn)走迷宮小游戲
更新時間:2020年03月30日 17:08:12 作者:hh_cnyali
這篇文章主要為大家詳細介紹了C++實現(xiàn)走迷宮小游戲,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
本文實例為大家分享了C++實現(xiàn)走迷宮小游戲的具體代碼,供大家參考,具體內容如下
源碼下載:C++實現(xiàn)走迷宮小游戲
主程序代碼:
#include<conio.h>
#include<stdlib.h>
#include<time.h>
#include<string.h>
#include<windows.h>
#include<iostream>
using namespace std;
char pr[10]={1,' ','E','O'} ;
int level,n,m,map[50][50],i,j,x,y,k,ex,ey;
char c[1001];
int main(){
system("cls");
puts("if you no full screen,please press full screen");
getch();
system("cls");
puts("please choose level");
again:;
cin>>level;
if(level>1||level<1){
puts("haven't this level");
goto again;
}
puts("loading...");
sprintf(c,"%d.map",level);
freopen(c,"r",stdin);
cin>>n>>m;
for(i=1;i<=n;i++)
for(j=1;j<=m;j++)
cin>>map[i][j];
fclose(stdin);
for(i=1;i<=n;i++)
for(j=1;j<=m;j++)
if(map[i][j]==3){
x=i;
y=j;
}
else if(map[i][j]==2){
ex=i;
ey=j;
}
while(x!=ex&&y!=ey){
system("cls");
for(i=1;i<=n;i++,putchar('\n'))
for(j=1;j<=m;j++)
putchar(pr[map[i][j]]);
k=getch();
if(k=='w')
if(map[x-1][y]&&(x-1)){
map[x-1][y]=3;
map[x][y]=1;
x--;
}
if(k=='s')
if(map[x+1][y]&&(x+1)<=n){
map[x+1][y]=3;
map[x][y]=1;
x++;
}
if(k=='a')
if(map[x][y-1]&&(y-1)){
map[x][y-1]=3;
map[x][y]=1;
y--;
}
if(k=='d')
if(map[x][y+1]&&(y+1)<=m){
map[x][y+1]=3;
map[x][y]=1;
y++;
}
}
system("cls");
return 0;
}
更多C++精彩小游戲請點擊專題:經(jīng)典游戲 進行學習
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關文章
C++ 數(shù)據(jù)結構之水洼的數(shù)量算法
這篇文章主要介紹了C++ 數(shù)據(jù)結構之水洼的數(shù)量算法的相關資料,需要的朋友可以參考下2017-06-06

