普源為晚上的班級聯(lián)歡會設(shè)計了一個抽獎程序,將所有同學(xué)的編號和對應(yīng)的姓名分別保存在數(shù)組a(全班共50個同學(xué),編號為1到50)和數(shù)組b中,程序會隨機(jī)產(chǎn)生一個1到50的正整數(shù)(同時包括1和50),作為中獎編號.
程序界面如圖所示,左邊列表框List1中顯示同學(xué)的編號和姓名,單擊“抽獎“按鈕(Command1),在標(biāo)簽Label3中顯示抽中的編號,同時在標(biāo)簽Label4中顯示“恭喜***同學(xué)“,其中具體同學(xué)的姓名從數(shù)組b中獲?。?br />解決此問題的程序段如下:
Dim a(1To 50)As Integer
Dim b(1To 50)As String
Function search(m As Integer) As Integer
search=0
For i=1To 50
If m=a(i) Then
search=a(i)
End If
Next i
End Function
Private Sub Command1_Click ( ?。?br />Dim c As Integer,t as integer
Randomize
①c=int(rnd*50)+1c=int(rnd*50)+1
Label3.Caption=Str(c)
t=search(c)
If t<>0Then
Label4.Caption=“恭喜“+②b(t)b(t)+“同學(xué)“
End If
End Sub
Private Sub Form_Load ( ?。?br />'此過程用于對數(shù)組a和數(shù)組b進(jìn)行初始賦值,代碼略
End Sub
(1)函數(shù)search中所用的算法是 順序查找順序查找. (選填:順序查找 或 對分查找)在程序①和②橫線處,填入適當(dāng)?shù)恼Z句或表達(dá)式,把程序補(bǔ)充完整:
(2)程序中①橫線處應(yīng)填入 c=int(rnd*50)+1c=int(rnd*50)+1.
(3)程序中②橫線處應(yīng)填入 b(t)b(t).
【考點】查找算法及其程序?qū)崿F(xiàn).
【答案】c=int(rnd*50)+1;b(t);順序查找;c=int(rnd*50)+1;b(t)
【解答】
【點評】
聲明:本試題解析著作權(quán)屬菁優(yōu)網(wǎng)所有,未經(jīng)書面同意,不得復(fù)制發(fā)布。
發(fā)布:2024/12/5 12:30:1組卷:16引用:1難度:0.1
相似題
-
1.某對分查找算法的VB程序段如下:
數(shù)組元素a(1)到a(10)的值依次為“12,15,18,20,25,39,47,88,90,99”,經(jīng)過上述代碼查找后,下列表達(dá)式正確的是( ?。?/h2>發(fā)布:2024/12/20 16:0:2組卷:5引用:2難度:0.5 -
2.某數(shù)組d中的數(shù)據(jù)依次是[8,12,15,28,28,32,36,39],要查找某個元素是否在數(shù)組中,下列說法正確的是( ?。?/h2>
發(fā)布:2024/12/20 0:0:1組卷:3引用:1難度:0.7 -
3.有如下對分查找VB程序段:
若數(shù)組元素a(1)~a(10)的值依次為“5,9,13,18,22,27,31,39,40,44”,運(yùn)行程序后,文本
框Text2中顯示的內(nèi)容為3,則輸入的key值不可能為( ?。?/h2>發(fā)布:2024/12/20 20:0:2組卷:3引用:2難度:0.4
相關(guān)試卷