用C語言實作猜數字游戲

uj5u.com熱心網友回復:
只存在于一張卡片中,只有6個組合,無法放下50個數只存在于兩張卡片中,只有30個組合,也無法放下50個數。
所以,可以定義一個這樣的陣列
card[6][5][4],可以放120個數
想辦法分配一下,如圖中排列。
當用戶點了一個,兩個,或三個卡片,就能猜出是數字幾了
uj5u.com熱心網友回復:
小case每個卡片上的第一個數字1,2,4,8,16,32
任何一個數1~63之內的, 必然可以拆解成上述6個數中若干的和
比如,7,可以拆解為1+2+4, 所以讓他在第一個,第二個和第三個里面都出現
有如:45, 可以分解為32 + 8 + 4 + 1, 所以它再第一,三,四和六號卡片出現
回圈1到50, 根據每個數的二進制表示形式上各個bit上是否是1,就知道放到哪個一個卡片了, 從而完成陣列的初始化
用戶,輸入數字在哪些卡片上,就取出這些卡片上第一個數字, 把他們求和,就知道這個數字是幾了。
沒有什么太難的地方, 自己寫吧。有問題,貼代碼提問
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/118653.html
標籤:新手樂園
