日本免费高清视频-国产福利视频导航-黄色在线播放国产-天天操天天操天天操天天操|www.shdianci.com

學(xué)無先后,達(dá)者為師

網(wǎng)站首頁 編程語言 正文

C語言撲克牌游戲示例(c語言紙牌游戲)

作者:DM_LL ? 更新時(shí)間: 2022-03-14 編程語言

一、 設(shè)計(jì)目的

撲克牌是我們從小玩到大的紙牌類小游戲,我們有各種玩法跟不同的規(guī)則。我之所以選擇的這個(gè)撲克牌,是因?yàn)槲矣X得可以提高我的編程邏輯能力跟運(yùn)用循環(huán)的能力。還能讓我自由運(yùn)用所學(xué)知識(shí)完成我的項(xiàng)目設(shè)計(jì)的需求,對(duì)我綜合能力的能力很有挑戰(zhàn)!

二、 設(shè)計(jì)內(nèi)容與要求

(1)設(shè)計(jì)內(nèi)容:撲克牌游戲。

(2)介紹撲克牌:一副沒有大小王的52張牌,該牌從大到小的順序?yàn)椋?、3、4、5、6、7、8、9、10、J、Q、K、A。

(3)設(shè)計(jì)的比賽規(guī)則是:為每位玩家隨機(jī)分配13張牌,設(shè)計(jì)以玩家1為最先發(fā)牌者,并且可以任意n(1 <=n<= 4)張出牌,并且下一位玩家的牌數(shù)要與上一位玩家所出的牌的數(shù)量一致,并且比上位玩家大,只要有一個(gè)玩家的牌出完則該玩家勝利,游戲結(jié)束。

三、 設(shè)計(jì)思路

在這里插入圖片描述
在這里插入圖片描述
在這里插入圖片描述

四、 實(shí)現(xiàn)過程

洗牌時(shí)使用rand函數(shù),使每次產(chǎn)生的隨機(jī)數(shù)與上一次的不相同,隨機(jī)數(shù)范圍在1到52之間,并且弄個(gè)循環(huán),保證每次產(chǎn)生的數(shù)字都與之前的不一樣。另外,定義一個(gè)結(jié)構(gòu)體,把每次產(chǎn)生的隨機(jī)數(shù)都放進(jìn)這個(gè)結(jié)構(gòu)體中。程序中每個(gè)玩家都必須出牌,所以要定義一個(gè)函數(shù)將數(shù)字分別轉(zhuǎn)變?yōu)榧埮啤⑼婕页鲞^的牌賦值為13,依次達(dá)到標(biāo)記刪除的目的。以玩家1為首先打牌者,從最小的牌開始,有幾張一樣的都出,以此達(dá)到任意n(1<=n<=4)張出牌的目的,玩家2看有沒有牌大于玩家1,如果有則出牌,沒有就輪到玩家3,同理輪到玩家4。把每個(gè)玩家已經(jīng)打過的牌進(jìn)行賦值為13,目的就是防止再一次打牌。當(dāng)所有玩家沒有出牌時(shí),上輪贏的玩家就會(huì)重新出牌。游戲結(jié)束是以某位玩家的牌先出完為勝。

在這里插入圖片描述
在這里插入圖片描述
在這里插入圖片描述

五、 結(jié)論與改進(jìn)

項(xiàng)目已完成的效果:

\1. 一副撲克52張牌,從小到大的順序?yàn)椋?、3、4、5、6、7、8、9、10、J、Q、K、A,

\2. 由電腦隨機(jī)洗牌,并分成4份(4個(gè)電腦玩家),并設(shè)計(jì)出一個(gè)對(duì)弈函數(shù),每家調(diào)用該函數(shù)實(shí)現(xiàn)自動(dòng)出牌;出牌后,若所有下家都沒有牌出,則當(dāng)前這一家可以選擇出其它牌。一次出牌可以是1張、2張一樣、3張一樣或者4張一樣,下家所出的牌,需要大于上家出的牌,若上家出2張一樣的,那下家也要出2張一樣的,而且比它大的牌;

原文鏈接:https://blog.csdn.net/DM_LL/article/details/122083110

欄目分類
最近更新