走迷宮+推箱子

兩個小游戲的大致邏輯


走迷宮:
1、定義二維字符數組作為迷宮
2、定義變量記錄老鼠的位置
3、獲取游戲開始時間
3、進入循環
1、清理屏幕,使用system調用系統命令。
2、顯示迷宮(遍歷二維字符數組)
3、檢查是否到達出口
獲取游戲結束時間,計算出走出迷宮用了多少秒。
4、獲取方向鍵并處理
判斷接下來要走的位置是否是路,
1、把舊位置賦值為空格
2、把新位置賦值為老鼠
3、把記錄老鼠位置的變量改變。


推箱子:
1、確定數字與字符的對應關系。
0 printf(" “);
2 printf(”@");
3 printf("#");
4 printf("");5printf("O");9printf(""); 5 printf("O"); 9 printf("");5printf("O");9printf("");
2、定義地圖
char map[8][8] = {
{0,0,3,3,3,3,0,0},
{0,0,3,5,5,3,0,0},
{0,3,3,0,5,3,3,0},
{0,3,0,0,4,5,3,0},
{3,3,0,4,0,0,3,3},
{3,0,0,3,4,4,0,3},
{3,0,0,2,0,0,0,3},
{3,3,3,3,3,3,3,3},
};
3、定義記錄小人兒位置的變量。
6 3
4、進入循環
1、清理屏幕并顯示地圖。
2、檢查是否完成任務
檢查數組中9的個數
任務完成后,顯示使用了多少步。
3、獲取方向鍵
1、前面是墻
2、前面是路或目標,參考走迷宮的處理
目標位置 += 2
原位置 -= 2
3、前面是路或箱子
檢查前面的前面必須是目標或路
前面的前面 += 4
前面 -= 4
前面 += 4
原位置 -= 2
4、記錄走的步數

注意:
time(NULL)獲取自 1970-1-1 00:00:00 到現在過了多少秒。
獲取方向鍵使用getch.h頭文件中的getch函數
把getch.h文件復制到/usr/include/
sudo cp getch.h /usr/include/
sudo chmod +r /usr/include/getch.h
183 上
184 下
185 右
186 左


代碼已上傳至Github庫下,點CODE_ADDRESS進入

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/449121.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/449121.shtml
英文地址,請注明出處:http://en.pswp.cn/news/449121.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Facebook開源ptr:在Python環境中并行運行單元測試

Facebook開源了一個名為Python Test Runner(ptr)的新項目,允許開發人員運行Python單元測試套件。ptr和現有測試運行器之間的主要區別在于ptr通過爬取存儲庫查找一定的Python項目,這些項目帶有的單元測試在安裝文件中已經定義過。 …

小竅門解決大問題(組圖)

1.洗頭時,在水中放少許鹽,也可以預防脫發。 2.用醋洗頭,可以令頭發飄順,容易打理而且兼有去頭皮屑的功效。特別適合燙染后的頭發。 3.刷牙時在牙膏上加上一點小蘇打,刷三次后牙齒潔白如玉,牙銹自然脫落…

解決報錯: Connecting to Kong on http ... Could not reach Kong on http://xxx.xxx.xxx.xxx:8001

前些天發現了一個巨牛的人工智能學習網站,通俗易懂,風趣幽默,忍不住分享一下給大家。點擊跳轉到教程。 1. Docker 中安裝并啟動好網關 kong 后,想要安裝 kong 的圖形化界面 kong-dashboard ,運行命令: do…

生成迷宮/C++

小時候,都喜歡玩迷宮,現在的電腦上還可以玩3D類迷宮。 那么每次開始游戲時,迷宮里密密麻麻的道路是怎么生成的呢? 在代碼里面,我們把它們想象成一堆像素小格子,當兩個格子連在一起,就像一堵墻&a…

Spring boot 配置tomcat后 控制臺不打印SQL日志

在pom.xml中配置tomcat啟動處加上&#xff1a; <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId><exclusions><exclusion><groupId>org.springframework.boot</…

人生有五不:不等、不管、不看、不做、不給

一、我不等 朋友什么都等&#xff1a;等退休、等一千萬存款、等孩子長大、等房貸繳清……最后等到了告別式。 他有感而發告訴我們這群探病友人&#xff0c;人都會走&#xff0c;可是他走得有些遺憾&#xff0c;有點不甘&#xff0c;非常后悔&#xff0c;除了工作之外&#xff0…

selenium操作瀏覽器的前進和后退

前進關鍵字&#xff1a;driver.forward() 后退關鍵字&#xff1a;driver.back() 測試對象&#xff1a;1、https://www.baidu.com/ 2、https://www.sogou.com/ 實例代碼&#xff1a; 1 # 導入測試所需的庫或者模塊2 from selenium import webdriver3 import unittest4 import ti…

關于對象不能直接訪問私有成員的誤區(轉)

先貼代碼&#xff1a; #includeusing namespace std; class CPoint { public:CPoint(int xx, int yy){x xx;y yy;}CPoint(const CPoint &p){x p.x;y p.y;} private:int x, y; };如果你在想為什么拷貝構造函數的參數可以直接去訪問它自己的私有成員的話&#xff0c;你就…

阿里云 ECS服務器 開放 8080 端口 -- 圖解

前些天發現了一個巨牛的人工智能學習網站&#xff0c;通俗易懂&#xff0c;風趣幽默&#xff0c;忍不住分享一下給大家。點擊跳轉到教程。 由于 kong-dashboard 的端口是映射到 8080 的&#xff0c;服務已啟動成功卻一直訪問不了&#xff0c;最后才想起端口沒有開放 ... 1. 登…

.NET高級代碼審計(第三課)Fastjson反序列化漏洞

0X00 前言 Java中的Fastjson曾經爆出了多個反序列化漏洞和Bypass版本&#xff0c;而在.Net領域也有一個Fastjson的庫&#xff0c;作者官宣這是一個讀寫Json效率最高的的.Net 組件&#xff0c;使用內置方法JSON.ToJSON可以快速序列化.Net對象。讓你輕松實現.Net中所有類型(對象,…

IDEA:No SLF4J providers were found.

如果您是用IDEA 的 maven 寫的 將slf4j的導入包 更改 為下列代碼 <dependency><groupId>org.slf4j</groupId><artifactId>slf4j-api</artifactId><version>1.8.0-beta2</version></dependency><dependency><groupId&…

【C++基礎】時間類型詳解(轉)

Unix時間戳(Unix timestamp)&#xff0c;或稱Unix時間(Unix time)、POSIX時間(POSIX time)&#xff0c;是一種時間表示方式&#xff0c;定義為從格林威治時間1970年01月01日00時00分00秒起至現在的總秒數。Unix時間戳不僅被使用在Unix 系統、類Unix系統中&#xff0c;也在許多其…

沒變強是因為你太舒服(圖)

職業生涯很長&#xff0c;對企業而言&#xff0c;它需要你成為一個專才&#xff0c;但從職業發展來看&#xff0c;你需要成為一個全才&#xff0c;方能適應社會的變化。 阻礙你成為全才的不良習慣有很多&#xff0c;有時候我們喜歡趨利避害&#xff0c;拖延癥更是讓自己定下來…

解決:DuplicateMappingException: Table [xx] contains physical column name referred to by multiple ... .

前些天發現了一個巨牛的人工智能學習網站&#xff0c;通俗易懂&#xff0c;風趣幽默&#xff0c;忍不住分享一下給大家。點擊跳轉到教程。 報錯如題&#xff1a; Caused by: org.hibernate.DuplicateMappingException: Table [xxx] contains physical column name [comment] …

0323表格學習

上午早來復習了一會昨天的課程。今天主要學習了表格的標簽寫法&#xff0c;難度不大&#xff0c;但是合并行與合并列容易混淆搞不明白。 <!--有序列表--> <ol type"I"> <li>數學</li> <li>英語</li> &l…

路由進階

1>路由組件傳參 在組件中使用 $route 會使之與其對應路由形成高度耦合&#xff0c;從而使組件只能在某些特定的 URL 上使用&#xff0c;限制了其靈活性。 解決方法: 1.1若是動態匹配頁面&#xff0c;只需要在路由參數中加入props:true即可。 import Home from "/views/…

物聯網攝像機通訊_網絡調試助手

1&#xff0c;文檔目的&#xff1a; 了解對于物聯網網關與攝像機協議聯動&#xff0c;進行報警抓圖&#xff0c;智能檢測&#xff0c;OSD疊加&#xff0c;語音播報控制等聯動及數據交互。 適用產品&#xff1a;物聯網網關 &#xff08;OSD是屏幕顯示技術的一種&#xff09; 2…

linux 復制指定目錄下的全部文件到另一個目錄中,linux cp 文件夾

前些天發現了一個巨牛的人工智能學習網站&#xff0c;通俗易懂&#xff0c;風趣幽默&#xff0c;忍不住分享一下給大家。點擊跳轉到教程。 linux復制指定目錄下的全部文件到另一個目錄中復制指定目錄下的全部文件到另一個目錄中文件及目錄的復制是經常要用到的。linux下進行復…

銀行不告訴的秘密,看完豁然大悟

隨著理財意識的廣泛普及&#xff0c;每個人與銀行打交道的次數越來越頻繁&#xff0c;對于銀行知識、業務的了解似乎也有了很大的進步。 但總有一些看似很“肯定”的事&#xff0c;在銀行那里卻成了“不一定”。 在銀行里&#xff0c;還存在著不少讓非專業人士“意想不到”…

TOJ 3046: 招商銀行網絡系統

3046: 招商銀行網絡系統 Time Limit(Common/Java):1000MS/3000MS Memory Limit:65536KByteTotal Submit: 12 Accepted:3 Description 雖然招商銀行的網絡安全已經做得非常完善&#xff0c;但是天有不測風云&#xff0c;招商銀行內部網絡系統的一臺服務器意外感…