java練習 撲克牌類的建立 洗牌

2021-08-09 15:57:32 字數 981 閱讀 8132

##練習1

請定義乙個名為card的撲克牌類,該類有兩個private訪問許可權的字串變數face和suit:分別描述一張牌的牌面值(如:a、k、q、j、10、9、…、3、2等)和花色(如:「黑桃」、「紅桃」、「梅花」和「方塊」)。定義card類中的public訪問許可權的set方法,為類中的變數賦值;定義public訪問許可權的方法

getface(),得到撲克牌的牌面值; 定義public訪問許可權的方法getsuit(),得到撲克牌的花色; 定義方法tostring(),返回表示撲克牌的花色和牌面值字串(如「紅桃a」、「梅花10」等)。

public class card 

public void setsuit(string b)

public string getface()

public string getsuit()

public string tostring()

}

##練習2

若應用程式的main方法中,定義字串陣列faces和suits: 分別表示撲克牌的牌面值和花色;定義52個元素的card型別陣列deck,用來存放4個花色的52張牌。如下所示。

string f = ;

string s =

;card deck = new card[ 52 ];

(1) 使用card類的構造方法給deck陣列的52張牌賦值,要求陣列中先存放黑桃花色的a、2、3、…、k;然後是紅桃花色的a、2、3、…、k;梅花花色的a、2、3、…、k;方塊花色的a、2、3、…、k。請寫出實現上述功能的程式段。

(2) 請編寫模擬洗牌的程式段,即把陣列deck中的撲克牌隨機打亂存放順序。

public static void satcard(card deck) ;

string s=new string ;

deck=new card[52];

for(int i=0;i總結:

剛學沒多久,老是忘了初始化。

撲克牌洗牌樣例

從網上摘抄的乙個洗牌程式的樣例 清雨空間與您分享程式設計的樂趣 以下是乙個基於c語言編寫的隨機 洗牌程式,程式先按順序生成一副紙牌,顯示紙牌,輸入洗牌次數,開始隨機洗牌,顯示洗牌結果 program by norm jen,include include includeint card 2 52 i...

撲克牌洗牌演算法 random shuffle

撲克牌洗牌有多種演算法 第1個 每次從原陣列a取出範圍 1,i 的數放入b陣列。缺點是每次都要將陣列i後面的元素進行移動。是乙個o n2 演算法 void xipai int n n for int i 1 i x i 第2種 每次取範圍 1,i 1 的數,然後與最後乙個元素做交換。這樣的複雜度優化...

模擬撲克牌的洗牌發牌

在記憶體中模擬出一副牌,然後模擬洗牌,發牌等動作 流程 構建一副牌儲存到乙個陣列中 洗牌 建立玩家 向玩家發牌 輸出每個玩家的牌 include include include include include 一副牌的數量 define card count 54 定義撲克的花色,黑,紅,梅,方,小...