10.張強編寫了一個Visual Basic程序,用于查找所有相同身高的同學(xué)編號。程序運行界面如圖所示,在列表框List1中顯示所有同學(xué)的編號和身高(按身高從低到高排列),在文本框Text1中輸入需要查找的身高,單擊“查找”按鈕Command1,在列表框List2中顯示所有此身高的同學(xué)編號。數(shù)組a和數(shù)組b分別存儲同學(xué)的編號和對應(yīng)的身高(身高已從低到高排列)。
解決此問題的程序代碼如下:
Const n As Integer=10'n為學(xué)生數(shù)
Dim a(1To n) As String'數(shù)組a用于存儲學(xué)生的編號
Dim b(1To n) As Integer'數(shù)組b用于存儲學(xué)生的身高
Private Sub Command1_Click ( ?。?br />'此過程用于在列表框List2中顯示給定身高的所有學(xué)生的編號,代碼略。
End Sub
'以下函數(shù)用于查找給定身高的學(xué)生的相關(guān)信息
Private Function FindEx(k As Integer) As Integer
Dim f As Boolean,i As Integer,j As Integer,m As Integer
i=1:j=n
f=False
Do While (i<=j) And Not (f)
m=Fix((i+j)/2)
If k=b(m) Then
f=①
Else
If k<b(m) Then
j=m-1
Else
②
End If
End If
Loop
If f Then FindEx=m Else FindEx=0'找到返回m,否則返回0
End Function
Private Sub Form_Load
'此過程用于對數(shù)組a和數(shù)組b進行賦值,并把數(shù)據(jù)顯示在列表框List1中。代碼略
End Sub
(1)FindEx函數(shù)主要采用的算法是 。(填:順序查找/對分查找)
(2)在程序①和②橫線處,填入適當(dāng)?shù)恼Z句或表達式,把程序補充完整:
程序中①橫線處應(yīng)填入
。
程序中②橫線處應(yīng)填入
。