[問題] 印出隨機拿到的撲克牌面
C語言,初階邏輯問題
這是我的程式碼:http://codepad.org/BEKolV3s
實際要寫的程式比較複雜一些
我就不贅述,僅針對這個問題提問
分成玩家(您)及電腦雙方,隨機配牌,
這邊有規定要使用結構,內含花色跟點數兩個項目來寫
我用play結構陣列player[2]宣告了使用者及電腦兩個玩家.
由於必須以亂數產生花色及點數,而且之後兩者都必須比大小
所以我先用1~13來表示點數,並用1~4代表四種花色
而問題在於,
於規定的standard output中,
在顯示雙方勝負之前必須先printf出雙方的牌面
而此時1.11.12.13這四種點數必須要以A,J,Q,K代替
那麼我該怎麼辦呢?
目前在顯示牌面花色的部分,我是分成四個if,反正花色也只有四種
若color==3則顯示紅心,以此類推
後面我目前只能直接printf數字
所以顯示的結果會有 紅心12 這樣的錯誤牌面
但總不能在每個if之下再去分成13個if吧?!
所以我卡住了......
我有想過一個辦法,
就是在一開始先宣告一個陣列card[13],內存對照表
然後把隨機配到的數字當作索引值
如此一來,當隨機配到13時,
就會printf出card[13]這一格存的字元,也就是K
感覺比較接近答案了,但是在存10的時候就又有問題了
10是字串,不是字元,無法獨立被存在某一格裡面
所以這個方法應該不能用......
我還想不到解決方法
該怎麼辦呢??
感激不盡!
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.117.185.157
※ 編輯: cart76002 來自: 140.117.185.157 (12/26 04:49)
推
12/26 04:55, , 1F
12/26 04:55, 1F
→
12/26 04:56, , 2F
12/26 04:56, 2F
推
12/26 05:14, , 3F
12/26 05:14, 3F
→
12/26 05:23, , 4F
12/26 05:23, 4F
→
12/26 05:24, , 5F
12/26 05:24, 5F
推
12/26 05:28, , 6F
12/26 05:28, 6F
→
12/26 05:35, , 7F
12/26 05:35, 7F