其實字元版本的貪吃蛇並不是很大的乙個工作量,大概是在120行**左右。而整個程式的設計也是充分體現著「自頂向下」的設計思路的。
主函式就是極其簡單,畢竟最開始思考的時候就是想著什麼條件下使用者可以玩(蛇沒有死掉),什麼條件就結束。
int main()
playgame過程就包括要把一些元素放上去了,其中也包含了整個遊戲的大致過程,先列印出蛇、地圖、牆等元素,考慮蛇的移動等,並判斷遊戲是否結束。
//遊戲未結束則繼續玩
void playgame()
}//判斷遊戲是否結束
int gameover()
return
0;}
這就基本是貪吃蛇的基本函式了,剩下的事情就是要把每個函式要達到的目的給實現出來。這裡就以snakemove為例子:
//根據玩家輸入進行移動
void snakemove()
char input = getinput();
if (input == 'w' || input == 'w')
if (input == 's' || input == 's')
if (input == 'a' || input == 'a')
if (input == 'd' || input == 'd')
}
以上便是設計的大致思路了,其實每個問題都要把它分解成多個小問題來解決,要時刻體現出自頂向下的思想,這樣的思路才是正確的。 字元版本貪吃蛇遊戲設計
在前面的智慧型蛇遊戲中,我已經將我的全部 都貼出來了,大家也都看到了我的成果,雖然存在很多bug,但總算是有乙個初步的構架了,接下來,我要與大家分享一下這條蛇的艱難成長過程。首先,當然是最順利的乙個部分啦,那就是除去最基本的影象列印了,這我想也不用多說,大家接觸到這個作業時,肯定噼里啪啦就打出了乙個...
字元版本貪吃蛇遊戲設計及演算法
貪吃蛇,是一款經典的益智遊戲。我們可以通過演算法捕捉和傳遞智慧型,設計出能自動跑著吃食物的智慧型蛇。有不少人對此研究,設計出了很棒的演算法,如圖 歸納一些比較高階的演算法為三類 1.寬度優先搜尋最短路徑 2.走哈密頓迴路 3.特殊決策 這裡我主要介紹最簡單的貪婪演算法及整個遊戲的設計。首先是自動尋路...
人工貪吃蛇的設計
潘sir讓我們寫個貪吃蛇 貪吃蛇分為三部分,一全域性變數的構建 二蛇的移動 三食物的投放。首先,構造把全域性的條件做好。include include include define snake max length 20 define snake head h define snake body x...