編寫(xiě)一個(gè)VB抽獎(jiǎng)程序,功能如下:從數(shù)據(jù)庫(kù)讀取相關(guān)數(shù)據(jù)并顯示在列表框List1中,在文本框Text1中輸入中獎(jiǎng)人數(shù),單擊“抽獎(jiǎng)”按鈕Command1,在列表框List2中輸出 結(jié)果。 抽獎(jiǎng)規(guī)則:中獎(jiǎng)人數(shù)為1人,男女不限; 中獎(jiǎng)人數(shù)超1人,男女對(duì)半(奇數(shù)時(shí)女性多1人)。 程序運(yùn)行界面如圖所示。 實(shí)現(xiàn)上述功能的VB程序如下: Dim xm(1 To 500)As String,xh(1 To 500)As String,xb(1 To 500)As String Dim n As Integer'學(xué)生總?cè)藬?shù) Dim a(1 To 100)As Integer'抽中序號(hào) Private Sub Form_Load ( ) '本過(guò)程讀取n位同學(xué)的序號(hào)、姓名和性別, '分別存儲(chǔ)在數(shù)組xh、xm、xb中 '并在List1中顯示,代碼略 End Sub Private Sub Command1_Click ( ) Dim rs As Integer,m As Integer,x As Integer,girl As Integer,i As Integer Dim xbs(1 To 500)As Integer Randomize List2.Clear List2.AddItem“姓名“&““&“性別“ rs=
Val(Text1.Text)
Val(Text1.Text)
For i=1 To n If xb(i)=“女“Then xbs(i)=1 Else xbs(i)=0 Next i m=0 girl=0 If rs=1 Then x=Int(Rnd*n)+1 List2.AddItem xm(x) &““& xb(x) Else Do While m<rs x=Int(Rnd*n)+1 If checkf(x) Then m=m+1:a(m)=x girl=girl+xbs(a(m)) If
m-girl>rs\2
m-girl>rs\2
Then a(m)=0:m=m-1 ElseIf girl>(rs+1)\2 Then a(m)=0:m=m-1
girl=girl-1
girl=girl-1
End If End If Loop For i=1 To m List2.AddItem Next i End If End Sub Function checkf(p As Integer) As Boolean '核對(duì)重復(fù)中獎(jiǎng),未中過(guò)獎(jiǎng)返回True '代碼略 End Function (1)請(qǐng)?jiān)跈M線處填入合適的代碼。 (2)程序中加框代碼有錯(cuò),請(qǐng)改正。
1.大部分社交軟件都有好友推薦的功能,當(dāng)用戶(hù) A 和用戶(hù) B 的共同好友數(shù)量超過(guò)閾值 p 時(shí),由系統(tǒng)向用戶(hù) A 推薦用戶(hù) B。 編寫(xiě) VB 程序,實(shí)現(xiàn)好友推薦功能。運(yùn)行程序,列表框 Listl 中顯示用戶(hù) id 及好友列表,在文本框 Textl 中 輸入推薦目標(biāo)用戶(hù) id,在文本框 Text2 中輸入閾值 p,點(diǎn)擊“推薦”按鈕,在列表框List2 中顯示用戶(hù)之間的關(guān)系,在標(biāo)簽 Label5 中顯示向目標(biāo)用戶(hù)推薦的好友列表。程序運(yùn)行界面如圖: (1)根據(jù)如圖所示數(shù)據(jù),若輸入用戶(hù) id 為“3”,輸入閾值為“3”,則推薦好友為: