迷宫1.2
先发一下上次的代码
#include<bits/stdc++.h>
#include<windows.h>
#include <conio.h>
using namespace std;
char a[1005][1005]={
" ",
"################",
"# # *#",
"# # # #",
"#I # #",
"################",
};
int main()
{int i=4,j=1;for(int i=1;i<=5;i++){puts(a[i]);}char c;while(1){ c=getch();if(c=='w'){if(a[i-1][j]=='#'){system("cls");for(int i=1;i<=6;i++){puts(a[i]);}system("cls");}else{a[i][j]=' ';a[i-1][j]='I';i=i-1;system("cls");}}if(c=='s'){if(a[i+1][j]=='#'){system("cls");for(int i=1;i<=6;i++){puts(a[i]);}system("cls");}else{a[i][j]=' ';a[i+1][j]='I';i=i+1;system("cls");}}if(c=='a'){if(a[i][j-1]=='#'){system("cls");for(int i=1;i<=6;i++){puts(a[i]);}system("cls");}else{a[i][j]=' ';a[i][j-1]='I';j=j-1;system("cls");}}if(c=='d'){if(a[i][j+1]=='#'){system("cls");for(int i=1;i<=6;i++){puts(a[i]);}system("cls");}else{a[i][j]=' ';a[i][j+1]='I';j=j+1;system("cls");}}if('I'==a[2][14]){system("cls");cout<<"Win!";return 0; }for(int i=1;i<=6;i++){puts(a[i]);}}return 0;
}
这里,我们可以用void来把int main()下面的主程序换到上面来,再给他定义一个名字叫zhuchengxu
就可以写成下面这样
#include<bits/stdc++.h>
#include<windows.h>
#include <conio.h>
using namespace std;
char a[1005][1005]={
" ",
"################",
"# # *#",
"# # # #",
"#I # #",
"################",
};
void zhuchengxu(void)
{int i=4,j=1;for(int i=1;i<=5;i++){puts(a[i]);}char c;while(1){ c=getch();if(c=='w'){if(a[i-1][j]=='#'){system("cls");for(int i=1;i<=6;i++){puts(a[i]);}system("cls");}else{a[i][j]=' ';a[i-1][j]='I';i=i-1;system("cls");}}if(c=='s'){if(a[i+1][j]=='#'){system("cls");for(int i=1;i<=6;i++){puts(a[i]);}system("cls");}else{a[i][j]=' ';a[i+1][j]='I';i=i+1;system("cls");}}if(c=='a'){if(a[i][j-1]=='#'){system("cls");for(int i=1;i<=6;i++){puts(a[i]);}system("cls");}else{a[i][j]=' ';a[i][j-1]='I';j=j-1;system("cls");}}if(c=='d'){if(a[i][j+1]=='#'){system("cls");for(int i=1;i<=6;i++){puts(a[i]);}system("cls");}else{a[i][j]=' ';a[i][j+1]='I';j=j+1;system("cls");}}if('I'==a[2][14]){system("cls");cout<<"Win!";return 0; }for(int i=1;i<=6;i++){puts(a[i]);}}
}
int main()
{zhuchengxu();return 0;
}
和之前的效果都是一样的
接着来做第二关……
(三十分钟后……)
char b[1005][1005]={
" ",
"################",
"# x x *#",
"# # # #",
"#I x #",
"################",
};
这样,我们的第二个小地图就做出来了!
接着
void zhuchengxu2(void)
{int i=4,j=1;for(int i=1;i<=5;i++){puts(b[i]);}char c;while(1){ c=getch();if(c=='w'){if(a[i-1][j]=='#'){system("cls");for(int i=1;i<=6;i++){puts(b[i]);}system("cls");}else{a[i][j]=' ';a[i-1][j]='I';i=i-1;system("cls");}}if(c=='s'){if(a[i+1][j]=='#'){system("cls");for(int i=1;i<=6;i++){puts(b[i]);}system("cls");}else{a[i][j]=' ';a[i+1][j]='I';i=i+1;system("cls");}}if(c=='a'){if(a[i][j-1]=='#'){system("cls");for(int i=1;i<=6;i++){puts(b[i]);}system("cls");}else{a[i][j]=' ';a[i][j-1]='I';j=j-1;system("cls");}}if(c=='d'){if(a[i][j+1]=='#'){system("cls");for(int i=1;i<=6;i++){puts(b[i]);}system("cls");}else{a[i][j]=' ';a[i][j+1]='I';j=j+1;system("cls");}}if(c=='z'){if(a[i][j+2]=='x'){system("cls");for(int i=1;i<=6;i++){puts(b[i]);}system("cls");}a[i][j]=' ';a[i][j+2]='I';j=j+2;system("cls");}if('I'==a[2][14]){system("cls");cout<<"Win!";return ; }for(int i=1;i<=6;i++){puts(b[i]);}}
}
int main()
{
zhuchengxu2();
}
但是,我发现如果再加上zhuchengxu();时,它就会只执行zhuchengxu();里的内容
于是,我想到如果在执行完zhuchengxu();后的cout<<"win!";
结果还是不行
这时,我看到执行移动的都在zhuchengxu();里面的这怎么在zhuchengxu2();上显示出来呀?
于是,我马上就把这个给改了
这时候,我运行了一下代码,结果通关以后就不能输出Win
(100年后……)
代…码…
#include<bits/stdc++.h>
#include<windows.h>
#include <conio.h>
#include<bits/stdc++.h>
using namespace std;
int m=0;
char a[1005][1005]={
" ",
"################",
"# # *#",
"# # # #",
"#I # #",
"################",
};
char b[1005][1005]={
" ",
"################",
"# x x *#",
"# # # #",
"#I x #",
"################",
};int main()
{int m=0;if(m==0){int i=4,j=1;for(int i=1;i<=5;i++){puts(a[i]);}char c;while(1){ c=getch();if(c=='w'){if(a[i-1][j]=='#'){system("cls");for(int i=1;i<=6;i++){puts(a[i]);}system("cls");}else{a[i][j]=' ';a[i-1][j]='I';i=i-1;system("cls");}}if(c=='s'){if(a[i+1][j]=='#'){system("cls");for(int i=1;i<=6;i++){puts(a[i]);}system("cls");}else{a[i][j]=' ';a[i+1][j]='I';i=i+1;system("cls");}}if(c=='a'){if(a[i][j-1]=='#'){system("cls");for(int i=1;i<=6;i++){puts(a[i]);}system("cls");}else{a[i][j]=' ';a[i][j-1]='I';j=j-1;system("cls");}}if(c=='d'){if(a[i][j+1]=='#'){system("cls");for(int i=1;i<=6;i++){puts(a[i]);}system("cls");}else{a[i][j]=' ';a[i][j+1]='I';j=j+1;system("cls");}}if('I'==a[2][14]){system("cls");cout<<"Win!";Sleep(1000);m=m+1;system("cls");break;}for(int i=1;i<=6;i++){puts(a[i]);}}
}
if(m!=0){int i=4,j=1;for(int i=1;i<=5;i++){puts(b[i]);}char c;while(1){ c=getch();if(c=='w'){if(b[i-1][j]=='#'){system("cls");for(int i=1;i<=6;i++){puts(b[i]);}system("cls");}else{b[i][j]=' ';b[i-1][j]='I';i=i-1;system("cls");}}if(c=='s'){if(b[i+1][j]=='#'){system("cls");for(int i=1;i<=6;i++){puts(b[i]);}system("cls");}else{b[i][j]=' ';b[i+1][j]='I';i=i+1;system("cls");}}if(c=='a'){if(b[i][j-1]=='#'){system("cls");for(int i=1;i<=6;i++){puts(b[i]);}system("cls");}else{b[i][j]=' ';b[i][j-1]='I';j=j-1;system("cls");}}if(c=='d'){if(b[i][j+1]=='#'){system("cls");for(int i=1;i<=6;i++){puts(b[i]);}system("cls");}else{b[i][j]=' ';b[i][j+1]='I';j=j+1;system("cls");}}if(c=='z'){if(a[i][j+2]=='x'){system("cls");for(int i=1;i<=6;i++){puts(b[i]);}system("cls");}else{a[i][j]=' ';a[i][j+2]='I';j=j+2;system("cls");}}if('I'==b[2][14]){system("cls");cout<<"Win!";break; }for(int i=1;i<=6;i++){puts(b[i]);}}
}
}
z是瞬移(瞬移2格!)
瞬移后会留下上一个本体
下一次要随机迷宫了吧!(逃!)
相关文章:
迷宫1.2
先发一下上次的代码 #include<bits/stdc.h> #include<windows.h> #include <conio.h> using namespace std; char a[1005][1005]{ " ", "################", "# # *#", "# # # #&qu…...
RabbitMQ---应用问题
(一)幂等性介绍 幂等性是本身是数学中的运算性质,他们可以被多次应用,但是不会改变初始应用的结果 1.应用程序的幂等性介绍 包括很多,有数据库幂等性,接口幂等性以及网络通信幂等性等 就比如数据库的sel…...
Unity自学之旅03
Unity自学之旅03 Unity自学之旅03📝 碰撞体 Collider 基础定义与作用常见类型OnCollisionEnter 事件碰撞触发器 🤗 总结归纳 Unity自学之旅03 📝 碰撞体 Collider 基础 定义与作用 定义:碰撞体是游戏中用于检测物体之间碰撞的组…...
pip 相关
一劳永逸法(pip怎么样都用不了也更新不了): 重下python(卸载旧版本):请输入访问密码 密码:7598 各版本python都有,下3.10.10 python路径建立,pip无法访问方式: 访问pip要…...
vue request 发送formdata
在Vue中,你可以使用axios库来发送包含FormData的请求。以下是一个简单的例子: 首先,确保你已经安装了axios: npm install axios然后,你可以使用axios发送FormData,例如: import axios from a…...
Android RTMP直播练习实践
前言:本文只是练习,本文只是练习,本文只是练习! 直播的核心就是推流和拉流,我们就以RTMP的协议来实现下推流和拉流,其他的协议等我学习后再来补充 1.推流 1.1搭建流媒体服务器,具体搭建方法请参…...
ITIL认证工具商-ManageEngine Servicedesk Plus
ServiceDesk Plus是Zoho Corporation旗下企业IT管理部门ManageEngine提供的统一服务管理解决方案。凭借其无限的可扩展性、情境化的IT和业务集成以及一键式工作流程自动化功能,IT领导者可以使用ServiceDesk Plus有效执行和控制跨不同业务部门和IT功能的复杂工作流程…...
https 的 CA证书和电子签名
https 的攻击者可能使用伪造的一对公私钥与客户端交互, 那么如何确保确实是该服务器的公钥呢? 这就诞生了CA颁发机构 CA颁发机构 服务器和客户端都信任指定的CA颁发机构 服务器上传服务器公钥, CA颁发机构做了什么 服务器公钥哈希, 记为 Hash使用 CA 私钥为 Hash 进行 CA 签…...
频繁刷新网页会对服务器造成哪些影响?
当用户在进行浏览网页的过程中频繁刷新页面时,浏览器会向服务器发送请求,服务器会对该请求进行处理并返回到相应的页面内容中,所以频繁刷新网页会对服务器造成影响,有可能会出现以下问题: 用户每次刷新网页都会向服务器…...
贪心算法(题1)区间选点
输出 2 #include <iostream> #include<algorithm>using namespace std;const int N 100010 ;int n; struct Range {int l,r;bool operator <(const Range &W)const{return r<W.r;} }range[N];int main() {scanf("%d",&n);for(int i0;i&l…...
JavaWeb开发学习笔记--MySQL
MySQL-DQL 基本语法: select 字段列表 from 表名列表 where 条件列表 group by 分组字段列表 having 分组后条件列表 order by 排序字段列表 limit 分页参数 基本查询 关键字:SELECT 查询多个字段:select 字…...
抖音小程序一键获取手机号
前端代码组件 <button v-if"!isFromOrderList"class"get-phone-btn" open-type"getPhoneNumber"getphonenumber"onGetPhoneNumber">一键获取</button>// 获取手机号回调onGetPhoneNumber(e) {var that this tt.login({f…...
iconfont等图标托管网站上传svg显示未轮廓化解决办法
打开即时设计 即时设计 - 可实时协作的专业 UI 设计工具 导入图标后拖入画板里面,右键选择轮廓化 将图标导出...
2008-2020年各省城镇登记失业率数据
2008-2020年各省城镇登记失业率数据 1、时间:2008-2020年 2、来源:国家统计局、统计年鉴 3、指标:行政区划代码、地区名称、年份、城镇登记失业率 4、范围:31省 5、指标说明:城镇登记失业率是指在一定时期内&…...
Linux——信号量和(环形队列消费者模型)
Linux——线程条件变量(同步)-CSDN博客 文章目录 目录 文章目录 前言 一、信号量是什么? 二、信号量 1、主要类型 2、操作 3、应用场景 三、信号量函数 1、sem_init 函数 2、sem_wait 函数 3、sem_post 函数 4、sem_destroy 函数 …...
【JOIN】关键字在MySql中的详细使用
目录 INNER JOIN(内连接) LEFT JOIN(左连接) RIGHT JOIN(右连接) FULL JOIN(全连接) 示例图形化解释JOIN的不同类型 INNER JOIN: LEFT JOIN: RIGHT J…...
渗透测试--攻击常见的Web应用
本文章咱主要讨论,常见Web应用的攻击手法,其中并不完全,因为Web应用是在太多无法囊括全部,但其中的手法思想却值得我们借鉴,所以俺在此做了记录,希望对大家有帮助!主要有以下内容: 1…...
window系统annaconda中同时安装paddle和pytorch环境
一、下载nvidia驱动 Download The Official NVIDIA Drivers | NVIDIA 查看GPU信息 nvidia-smi 二、安装cuda CUDA Toolkit 11.8 Downloads | NVIDIA Developer 按以下步骤下载cuda安装包,我使用的cuda11.8 下载后双击一路下一步安装即可。 查看cuda版本 nvcc …...
python-leetcode-简化路径
71. 简化路径 - 力扣(LeetCode) class Solution:def simplifyPath(self, path: str) -> str:# 使用栈来处理路径stack []# 分割路径,以 / 为分隔符parts path.split(/)for part in parts:if part or part .:# 空字符串或 .࿰…...
浅谈 PID 控制算法
PID 控制算法概念 在我们的生活中可能大家都没有听说过 PID 控制算法,但它可以说是无处不在,小到空调的温度控制、无人机的精准悬停、机器人运作系统,大到飞机和火箭的飞行姿态控制都有 PID 的身影。 PID 控制算法,即比例 - 积分…...
生成xcframework
打包 XCFramework 的方法 XCFramework 是苹果推出的一种多平台二进制分发格式,可以包含多个架构和平台的代码。打包 XCFramework 通常用于分发库或框架。 使用 Xcode 命令行工具打包 通过 xcodebuild 命令可以打包 XCFramework。确保项目已经配置好需要支持的平台…...
Ubuntu系统下交叉编译openssl
一、参考资料 OpenSSL&&libcurl库的交叉编译 - hesetone - 博客园 二、准备工作 1. 编译环境 宿主机:Ubuntu 20.04.6 LTSHost:ARM32位交叉编译器:arm-linux-gnueabihf-gcc-11.1.0 2. 设置交叉编译工具链 在交叉编译之前&#x…...
STM32标准库-DMA直接存储器存取
文章目录 一、DMA1.1简介1.2存储器映像1.3DMA框图1.4DMA基本结构1.5DMA请求1.6数据宽度与对齐1.7数据转运DMA1.8ADC扫描模式DMA 二、数据转运DMA2.1接线图2.2代码2.3相关API 一、DMA 1.1简介 DMA(Direct Memory Access)直接存储器存取 DMA可以提供外设…...
页面渲染流程与性能优化
页面渲染流程与性能优化详解(完整版) 一、现代浏览器渲染流程(详细说明) 1. 构建DOM树 浏览器接收到HTML文档后,会逐步解析并构建DOM(Document Object Model)树。具体过程如下: (…...
Nginx server_name 配置说明
Nginx 是一个高性能的反向代理和负载均衡服务器,其核心配置之一是 server 块中的 server_name 指令。server_name 决定了 Nginx 如何根据客户端请求的 Host 头匹配对应的虚拟主机(Virtual Host)。 1. 简介 Nginx 使用 server_name 指令来确定…...
C++ Visual Studio 2017厂商给的源码没有.sln文件 易兆微芯片下载工具加开机动画下载。
1.先用Visual Studio 2017打开Yichip YC31xx loader.vcxproj,再用Visual Studio 2022打开。再保侟就有.sln文件了。 易兆微芯片下载工具加开机动画下载 ExtraDownloadFile1Info.\logo.bin|0|0|10D2000|0 MFC应用兼容CMD 在BOOL CYichipYC31xxloaderDlg::OnIni…...
sipsak:SIP瑞士军刀!全参数详细教程!Kali Linux教程!
简介 sipsak 是一个面向会话初始协议 (SIP) 应用程序开发人员和管理员的小型命令行工具。它可以用于对 SIP 应用程序和设备进行一些简单的测试。 sipsak 是一款 SIP 压力和诊断实用程序。它通过 sip-uri 向服务器发送 SIP 请求,并检查收到的响应。它以以下模式之一…...
【p2p、分布式,区块链笔记 MESH】Bluetooth蓝牙通信 BLE Mesh协议的拓扑结构 定向转发机制
目录 节点的功能承载层(GATT/Adv)局限性: 拓扑关系定向转发机制定向转发意义 CG 节点的功能 节点的功能由节点支持的特性和功能决定。所有节点都能够发送和接收网格消息。节点还可以选择支持一个或多个附加功能,如 Configuration …...
DiscuzX3.5发帖json api
参考文章:PHP实现独立Discuz站外发帖(直连操作数据库)_discuz 发帖api-CSDN博客 简单改造了一下,适配我自己的需求 有一个站点存在多个采集站,我想通过主站拿标题,采集站拿内容 使用到的sql如下 CREATE TABLE pre_forum_post_…...
恶补电源:1.电桥
一、元器件的选择 搜索并选择电桥,再multisim中选择FWB,就有各种型号的电桥: 电桥是用来干嘛的呢? 它是一个由四个二极管搭成的“桥梁”形状的电路,用来把交流电(AC)变成直流电(DC)。…...
