第 1 頁:選擇題 |
第 3 頁:程序填空題 |
第 4 頁:程序修改題 |
第 5 頁:程序設計題 |
二、程序填空題(共18分)
41[填空題]
函數fun的功能是:將一副撲克牌編號為l,2,3,…,53,54,以某種特定的方式洗牌,這種方式是將這副牌分成兩半,然后將它們交叉,并始終保持編號為l的牌在最上方,如第一次這樣洗牌后的結果為:1,28,2,29,…,53,27,54。兩次洗牌后的結果為:1,41,28,15,2,42…,53,40,27,14,54。
程序的功能是:輸出經過n次這樣洗牌后的結果。
請在程序的下畫線處填入正確的內容,并把下畫線刪除,使程序得出正確的結果。
注意:源程序存放在考生文件夾下的BLANK1.C中。不得增行或刪行,也不得更改程序的結構!
試題程序:
參考解析:【參考答案】 (1)b(2)2(3)b[k]
【解題思路】
填空1:for循環(huán)中使用了一個數組b,用來臨時存放交換位置后的撲克牌,C語言中變量需要先聲明后使用,所以填空(1)處需要聲明一個數組b。答案為b。
填空2:第二個for循環(huán)是將數組a中前一半元素(即1~27編號的撲克牌)放人數組b的奇數位置,將數組a中的后一半元素(即28~54編號的撲克牌)放人數組b的偶數位置,實現撲克牌的交叉洗牌。所以填空(2)處是數組b的起始值為2的偶數下標2k,答案為2。
填空3:由于數組b屬于函數中的臨時變量,所以將數組a的元素交叉存儲到數組b后,還需要將數組b的元素依次賦值給數組a,第三個for循環(huán)實現的功能是將數組b賦值給數組a,所以填空(3)處需要填入對應下標為k的數組b的元素,答案為b[k]。
微信搜索"考試吧"了解更多考試資訊、下載備考資料
相關推薦: