问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

求助用C或者C++语言实现一个迷宫小游戏代码

发布网友 发布时间:2022-05-14 03:10

我来回答

2个回答

热心网友 时间:2022-05-22 01:07

#include<bits/stdc++.h>

#include<windows.h>

#include<conio.h>

using namespace std;

int main()

{

int i123;

cout<<"   ."<<endl;

cout<<"  . ."<<endl;

cout<<" . . ."<<endl;

cout<<"  . ."<<endl;

cout<<"   ."<<endl;

cout<<"  T M";

for(i123=500;i123<=1000;i123+=100){

Beep(i123,1000);

}

system("cls");

char a[50][50]={"##############################",

       "#o         #   ##   # ### ####",

       "# ###### # # #    # # ### ####",

       "# #   ## #   # #### # ###   ##",

       "#   # ##  ###    #  #  ## ####",

       "##### #     # ##### ##    ####",

       "#   # ##### #   #   # # #    #",

       "# # #    ## # #### ## # # ####",

       "# # # ##      ##      # # ####",

       "# # # ####### ## ###### #   ##",

       "# #   ##   # ## ###### ###   #",

       "# ###### # #####  #        # #",

       "#        # #     ##### ### #  ",

       "# ######## ##### # ### ### # #",

       "#     # ## ##### ###       ###",

       "##### # ## #      ######## # #",

       "#     # ## ## ###        #   #",

       "# # ###       ###### ####### #",

       "# #    ### ##      #         #",

       "##############################"

       };

int i,i1,x=1,y=1,n=12,m=29;

char ch;

for(i=0;i<=19;i++){

puts(a[i]);

}

while(x!=n||y!=m){

  ch=getch();

if(ch==115||ch==25){

if(a[x+1][y]!=35){

a[x][y]=32;

x++;

a[x][y]=111;

}

}

if(ch==119||ch==24){

if(a[x-1][y]!=35){

a[x][y]=32;

x--;

a[x][y]=111;

}

}

if(ch==97||ch==27){

if(a[x][y-1]!=35){

a[x][y]=32;

y--;

a[x][y]=111;

}

}

if(ch==100||ch==26){

if(a[x][y+1]!=35){

a[x][y]=32;

y++;

a[x][y]=111;

}

}

system("cls");

for(i=0;i<=19;i++){

puts(a[i]);

}

}

for(i1=500;i1<=1000;i1=i1+100){

Beep(i1,1000);

}

cout<<endl<<"你赢了!!!祝贺你!!!";

system("pause");

}

热心网友 时间:2022-05-22 02:25

#include<iostream>

#include<iomanip>//setw的头文件 

using namespace std;

char a;//用来输入WASD控制方向 

int map[13][13]{//用二维数组做的地图 

{5,5,5,5,5,5,5,5,5,5,5,5,5},

{5,2,0,0,0,0,0,0,0,0,0,0,5},

{5,5,5,0,5,5,5,0,5,5,5,0,5},

{5,0,0,0,0,0,5,0,5,0,0,0,5},

{5,0,5,0,5,0,5,5,5,5,5,5,5},

{5,0,5,0,5,0,5,0,5,0,0,0,5},

{5,5,5,0,5,0,5,0,5,5,5,0,5},

{5,0,0,0,5,0,0,0,0,0,0,0,5},

{5,5,5,5,5,0,5,0,5,5,5,0,5},

{5,0,0,0,0,0,5,0,0,0,5,0,5},

{5,5,5,5,5,0,5,5,5,0,5,5,5},

{5,0,0,0,0,0,0,0,5,0,0,0,1},

{5,5,5,5,5,5,5,5,5,5,5,5,5}

};

int x=1,y=1;//玩家所在位置,用x和y控制坐标 

void Map(){//打印地图函数 

for(int i=0;i<=12;i++){

for(int j=0;j<=12;j++){

cout<<setw(2)<<map[i][j];

}

cout<<endl;

}

}

int Go(int s){//控制方向函数 

if(a=='S'){//向下 

if(map[x][y]>map[x+1][y]){//判断能否移动 

x++;//若能移动,坐标x++,y不变 

map[x][y]=map[x-1][y];//覆盖想要移动到的位置 ,也可以直接map[x][y]=1; 

map[x-1][y]=0;//将之前的位置变成0 

if(map[11][12]==2){//判断是否通关 

cout<<"恭喜您通关了"<<endl;

system("pause");

system("cls");

return 0;

}

else system("cls");

}

else{//否则输出无法移动,想再输入可以利用while循环 

cout<<"无法移动"<<endl; 

system("pause");

system("cls");

}

}

else if(a=='W'){

if(map[x][y]>map[x-1][y]){

x--;

map[x][y]=map[x+1][y];

map[x+1][y]=0;

if(map[11][12]==2){

cout<<"恭喜您通关了"<<endl;

system("pause");

system("cls");

return 0;

}

else system("cls");

}

else{

cout<<"无法移动"<<endl; 

system("pause");

system("cls");

}

}

else if(a=='D'){

if(map[x][y]>map[x][y+1]){

y++;

map[x][y]=map[x][y-1];

map[x][y-1]=0;

if(map[11][12]==2){

cout<<"恭喜您通关了"<<endl;

system("pause");

system("cls");

return 0;

}

else system("cls");

}

else{

cout<<"无法移动"<<endl; 

system("pause");

system("cls");

}

}


else if(a=='A'){

if(map[x][y]>map[x][y-1]){

y--;

map[x][y]=map[x][y+1];

map[x][y+1]=0;

if(map[11][12]==2){

cout<<"恭喜您通关了"<<endl;

system("pause");

system("cls");

return 0;

}

else system("cls");

}

else{

cout<<"无法移动"<<endl; 

system("pause");

system("cls");

}

}

else{//输入错可重新输入 

cout<<"请输入WASD"<<endl;

system("pause");

system("cls");

}

}

int main()

{

while(true){

Map();//打印地图 

cin>>a;//输入方向 

Go(a);//使用函数 

}

return 0;

}

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
双人沙发的一般尺寸是多少 双人沙发的标准尺寸是多少 双人沙发的常规尺寸是多少 一般的双人沙发的尺寸是多少 2人沙发标准尺寸是多少 面对此等形势与挑战,我们又该如何应对? 大量国央企数科公司成立,传统软件公司如何应对 造梦西游OL 造梦西游ol 80级以后该干嘛? 西铁城走心机程序更新失败 房子满二是指多久 用C++语言编写一个迷宫游戏,要求如下 ui设计师工资待遇 锂电池可调分切刀有弧形怎么办? 请教高人指点 非常急!!!! 还有毛刺换一次刀 分个几十片就有毛刺 如何使用分切机将一卷PVC膜卷整齐 我想在泉州学CAD 我想学CAD 可是不知道怎么办? 今天才开始得面试,面试到一个运维的岗位,但是我是坐Java的而且是达内培训的,投了那么躲简历 香港注册公司后怎么开户? 今天看到了灵魂摆渡,真心觉得这不是抄袭鬼语者的吗 注册了香港公司怎么开户? 灵魂摆渡2在几集演的是梁山伯与祝英台 求灵魂摆渡鬼节来客,最后,冥王和弹琴少年的全部对话台词,,急急急 灵魂摆渡2有祝敬丹吗 灵魂摆渡20集什么意思,没懂 顺产 阴道松弛? 灵魂摆渡倪虹洁演什么 求 灵魂摆渡 中赵吏恭祝冥王新年快乐,嘴里唱的歌曲是啥?跪求大神不吝赐教 灵魂摆渡里祝无双演员 “店庆”期间家电商场打折促销,所有商品降价20%,一台彩电原价4800元,现在买要用多少钱? 冬天适合装修房子吗? 如何用纸箱制作迷宫游戏 怎么编写老鼠走迷宫游戏? 制作flash立体迷宫小游戏的方法 手机摄像自动转换录视频时自动转换 想做一个flash迷宫小游戏,迷宫旁边有上下左右四个按钮,到了路口按哪个按钮就往哪走(不是走一点) 小米MIX2支持人脸识别了?用着怎么样 谁能用C语言做个迷宫游戏 小米mix2s有人脸识别吗 小米mix2能人面解锁吗 什么时候小米mix2能支持人脸识别 小米MIX2支持人脸识别吗 小米mix2支持人脸解锁吗 小米mix2s支持人脸识别吗,哪位大神知道 小米mix2s人脸识别安全么 高通骁龙660和骁龙835是一个系列吗 css布局需要注意的几点 QQ无法绑定手机号是怎么回事? QQ绑定时为什么手机号错误 华为手环6要开定位才能连接 华为手环6侧边按键失灵