某校跳高比賽計分規則如下:每個高度每位選手最多試跳三次,成功記為1,失敗或輪空記為0。如選手第一次試跳成功記為100,第二次試跳成功記為010,第三試跳成功記為001,三次失敗則終止比賽。編寫VB程序統計選手積分,在文本框Text1中輸入姓名和成績,在列表框List1中輸出結果,其算法如下:1.將每個選手的跳高記錄三位一組轉換成十進制數存儲到數組a (該數組元素的值都不相同)。2.先比較數組a中各數組元素的長度,長度長的排名在前;若長度相同的情況下從后往前依次比較字符大小,當前數值大的排名在前。程序運行界面如圖所示: 請在橫線處填入合適的代碼。 Dim a(1 To 9)As String'存儲跳高成績 Dim b(1 To 9)As String'存儲學生姓名 Dim c(1 To 9)As Integer Private Sub Command1_Click ( ) Dim ch As String,tmp As Integer,t As Integer Dim p As Integer,k As Integer,i As Integer,j As Integer Dim s As String s=Text1.Text:t=0 For i=1 To ①
Len(s)或len(jye.ai1.jye.ai)
Len(s)或len(jye.ai1.jye.ai)
If Mid(s,i,1)<>“/“Then ch=ch+Mid(s,i,1) Else t=t+1 If t Mod 2=0 Then a(t\2)=zh(ch) Else ②
b((t+1)\2)=ch或b(t\2+1)=ch
b((t+1)\2)=ch或b(t\2+1)=ch
End If ch=““ End If Next i For i=1 To t\2 c(i)=i Next i For i=1 To t\2-1 p=i For j=i+1 To t\2 If Len(a(c(p)))<Len(a(c(j)))Then p=j ElseIf Len(a(c(j)))=Len(a(c(p)))Then k=Len(a(j)):flag=True Do While k>=1 And flag If Val(Mid(a(c(j)),k,1))>Val(Mid(a(c(p)),k,1))Then p=j flag=false ElseIf val(Mid(a(c(j)),k,1))=val(Mid(a(c(p)),k,1))Then k=k-1 Else flag=False End If Loop End If Next j If p<>i Then tmp=c(i):c(i)=c(p):c(p)=tmp End If Next i For i=1 To t\2 ③
List.Addltem Str(i)+““+b(c(i))+““+a(c(i))
List.Addltem Str(i)+““+b(c(i))+““+a(c(i))
Next i End Sub Function zh(cm As String)As String Dim temp As String Dim i As Integer,j As Integer For i=1 To④
len(cm)\3
len(cm)\3
For j=1 To 3 temp=temp*2+Val(Mid(cm,(i-1)*3+j,1)) Next j zh=zh+CStr(temp)'CStr函數可把表達式轉換為字符串類型 temp=0 Next i End Function
1.大部分社交軟件都有好友推薦的功能,當用戶 A 和用戶 B 的共同好友數量超過閾值 p 時,由系統向用戶 A 推薦用戶 B。 編寫 VB 程序,實現好友推薦功能。運行程序,列表框 Listl 中顯示用戶 id 及好友列表,在文本框 Textl 中 輸入推薦目標用戶 id,在文本框 Text2 中輸入閾值 p,點擊“推薦”按鈕,在列表框List2 中顯示用戶之間的關系,在標簽 Label5 中顯示向目標用戶推薦的好友列表。程序運行界面如圖: (1)根據如圖所示數據,若輸入用戶 id 為“3”,輸入閾值為“3”,則推薦好友為: