分。 (2)實(shí)現(xiàn)上述功能的 VB 程序如下,請(qǐng)?jiān)跈M線處填入合適的代碼。 Const n=18000'總?cè)藬?shù)Dim kh(1 To n)As String'學(xué)生考號(hào)Dim cj(1 To n)As Single'原始成績(jī)Dim cj2(1 To n)As Integer'賦分成績(jī) Dim mc(1 To n)As Integer'原始成績(jī)的排名 Dim pro(1 To 20)As Single'每個(gè)等級(jí)的人數(shù)比例 Dim t(1 To 40)As Integer'每個(gè)等級(jí)賦分區(qū)間的上限和下限D(zhuǎn)im s(1 To 40)As Single'每個(gè)等級(jí)卷面得分的上限和下限D(zhuǎn)im num(1 To 20)As Integer Private Sub Form_Load ( )'從數(shù)據(jù)庫(kù)中讀取數(shù)據(jù),將考號(hào)、原始成績(jī)分別存儲(chǔ)在數(shù)組 kh 和數(shù)組 cj 中 '將每個(gè)等級(jí)的比例存入數(shù)組 pro 中 '將每個(gè)賦分區(qū)間的上限、下限存入數(shù)組 t 中(如 t(1)、t(2)分別存儲(chǔ)等級(jí) 1 的賦分上限 100,下限 97), '將數(shù)組 cj 降序排列,計(jì)算出名次存入數(shù)組 mc 中,并顯示在 List1 中,代碼略 End Sub Private Sub Command1_Click ( ) Dim flag As Boolean,k As Integer,i As Integer num(1)=Int(pro(1)*n+0.5) For i=2 To 20 num(i)=①
num(i-1)+Int(pro(i)*n+0.5)
num(i-1)+Int(pro(i)*n+0.5)
Next i num(20)=n k=1:flag=True:i=1 Do While i<=n'劃定每個(gè)等級(jí)相應(yīng)的卷面得分的上限和下限 If mc(i)<num(k)Then If flag Then s(2*k-1)=cj(i)flag=False i=i+1 ElseIf②
mc(i)=num(k)
mc(i)=num(k)
Then s(2*k)=cj(i) flag=True i=i+1 Else ③
s(2*k)=cj(i-1)
s(2*k)=cj(i-1)
flag=True k=k+1 End If Loop If s(2*k)=0 Then s(2*k)=cj(n) '根據(jù)比例轉(zhuǎn)換公式計(jì)算每個(gè)考生的賦分結(jié)果,存入數(shù)組 cj2 中,代碼略。 For i=1 To n List2.AddItem kh(i)+““+Str(cj(i))+““+Str(cj2(i))Next i End Sub
1.大部分社交軟件都有好友推薦的功能,當(dāng)用戶 A 和用戶 B 的共同好友數(shù)量超過(guò)閾值 p 時(shí),由系統(tǒng)向用戶 A 推薦用戶 B。 編寫(xiě) VB 程序,實(shí)現(xiàn)好友推薦功能。運(yùn)行程序,列表框 Listl 中顯示用戶 id 及好友列表,在文本框 Textl 中 輸入推薦目標(biāo)用戶 id,在文本框 Text2 中輸入閾值 p,點(diǎn)擊“推薦”按鈕,在列表框List2 中顯示用戶之間的關(guān)系,在標(biāo)簽 Label5 中顯示向目標(biāo)用戶推薦的好友列表。程序運(yùn)行界面如圖: (1)根據(jù)如圖所示數(shù)據(jù),若輸入用戶 id 為“3”,輸入閾值為“3”,則推薦好友為: