C語言撲克牌遊戲示例
一、 設計目的
撲克牌是我們從小玩到大的紙牌類小遊戲,我們有各種玩法跟不同的規則。我之所以選擇的這個撲克牌,是因為我覺得可以提高我的編程邏輯能力跟運用循環的能力。還能讓我自由運用所學知識完成我的項目設計的需求,對我綜合能力的能力很有挑戰!
二、 設計內容與要求
(1)設計內容:撲克牌遊戲。
(2)介紹撲克牌:一副沒有大小王的52張牌,該牌從大到小的順序為:2、3、4、5、6、7、8、9、10、J、Q、K、A。
(3)設計的比賽規則是:為每位玩傢隨機分配13張牌,設計以玩傢1為最先發牌者,並且可以任意n(1 <=n<= 4)張出牌,並且下一位玩傢的牌數要與上一位玩傢所出的牌的數量一致,並且比上位玩傢大,隻要有一個玩傢的牌出完則該玩傢勝利,遊戲結束。
三、 設計思路
四、 實現過程
洗牌時使用rand函數,使每次產生的隨機數與上一次的不相同,隨機數范圍在1到52之間,並且弄個循環,保證每次產生的數字都與之前的不一樣。另外,定義一個結構體,把每次產生的隨機數都放進這個結構體中。程序中每個玩傢都必須出牌,所以要定義一個函數將數字分別轉變為紙牌。將玩傢出過的牌賦值為13,依次達到標記刪除的目的。以玩傢1為首先打牌者,從最小的牌開始,有幾張一樣的都出,以此達到任意n(1<=n<=4)張出牌的目的,玩傢2看有沒有牌大於玩傢1,如果有則出牌,沒有就輪到玩傢3,同理輪到玩傢4。把每個玩傢已經打過的牌進行賦值為13,目的就是防止再一次打牌。當所有玩傢沒有出牌時,上輪贏的玩傢就會重新出牌。遊戲結束是以某位玩傢的牌先出完為勝。
五、 結論與改進
項目已完成的效果:
\1. 一副撲克52張牌,從小到大的順序為:2、3、4、5、6、7、8、9、10、J、Q、K、A,
\2. 由電腦隨機洗牌,並分成4份(4個電腦玩傢),並設計出一個對弈函數,每傢調用該函數實現自動出牌;出牌後,若所有下傢都沒有牌出,則當前這一傢可以選擇出其它牌。一次出牌可以是1張、2張一樣、3張一樣或者4張一樣,下傢所出的牌,需要大於上傢出的牌,若上傢出2張一樣的,那下傢也要出2張一樣的,而且比它大的牌;
到此這篇關於C語言撲克牌遊戲示例的文章就介紹到這瞭,更多相關C語言撲克牌內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!
推薦閱讀:
- C語言的隨機數rand()函數詳解
- Python 概率生成問題案例詳解
- SQLServer 使用rand獲取隨機數的操作
- MySQL 生成隨機數字、字符串、日期、驗證碼及 UUID的方法
- C語言遊戲項目球球大作戰實現流程