完化楼上的,,可以摇人名,,不会出现重复,,不会出现空白
加一个LIST 和一个TIMER ,COMMAND
Dim a(30) As String
Private Sub Command1_Click()
If Command1.Caption = "开始" Then
a(1) = "姓名1"
a(2) = "姓名2"
a(3) = "姓名3"
a(4) = "姓名4"
a(5) = "姓名5"
a(6) = "姓名6"
a(7) = "姓名7"
a(8) = "姓名8"
a(9) = "姓名9"
a(10) = "姓名10"
a(11) = "姓名11"
a(12) = "姓名12"
a(13) = "姓名13"
a(14) = "姓名14"
a(15) = "姓名15"
a(16) = "姓名16"
a(17) = "姓名17"
a(18) = "姓名18"
a(19) = "姓名19"
a(20) = "姓名20"
a(21) = "姓名21"
a(22) = "姓名22"
a(23) = "姓名23"
a(24) = "姓名24"
a(25) = "姓名25"
a(26) = "姓名26"
a(27) = "姓名27"
a(28) = "姓名28"
a(29) = "姓名29"
a(30) = "姓名30"
Command1.Caption = "停止"
Timer1.Enabled = True
Timer1.Interval = 50
Else
Timer1.Enabled = False
Timer1.Interval = 0
Command1.Caption = "开始"
End If
End Sub
Private Sub Form_Load()
Command1.Caption = "开始"
End Sub
Private Sub Timer1_Timer()
List1.Clear
Dim b(7) As Double
For i = 1 To 7
Randomize
1
b(i) = Int(29 * Rnd + 1)
For j = 1 To i - 1
If b(i) = b(j) Then GoTo 1
Next j
List1.AddItem a(b(i))
Next i
End Sub
太简单了吧。。
将30个人名存储到数组a(i)里,然后。
for j=0 to 6
Randomize
print a(Int(30 * Rnd))
next
Private Sub Command1_Click()
Dim i As Integer
Dim a(30) As String
List1.Clear
a(1) = "姓名1"
a(2) = "姓名2"
a(3) = "姓名3"
a(4) = "姓名4"
a(5) = "姓名5"
a(6) = "姓名6"
a(7) = "姓名7"
a(8) = "姓名8"
a(9) = "姓名9"
a(10) = "姓名10"
a(11) = "姓名11"
a(12) = "姓名12"
a(13) = "姓名13"
a(14) = "姓名14"
a(15) = "姓名15"
a(16) = "姓名16"
a(17) = "姓名17"
a(18) = "姓名18"
a(19) = "姓名19"
a(20) = "姓名20"
a(21) = "姓名21"
a(22) = "姓名22"
a(23) = "姓名23"
a(24) = "姓名24"
a(25) = "姓名25"
a(26) = "姓名26"
a(27) = "姓名27"
a(28) = "姓名28"
a(29) = "姓名29"
a(30) = "姓名30"
For i = 0 To 6
Randomize
List1.AddItem a(Int(30 * Rnd)), 0
Next
End Sub
参加人26个字母,呵呵,自己也凑热闹
Option Explicit
Option Base 1
Dim Rec() As String * 1
Dim FirPrize(3) As String * 1
Dim SecPrize(5) As String * 1
Dim ThiPrize(10) As String * 1
Dim RecNum As Integer
Private Sub Cd1()
Dim Num As Integer
Dim I As Integer
Dim J As Integer
Dim Temp As String * 1
Print "获得一等奖的是:"
For J = 1 To 3
Randomize
Begin1: Temp = Chr(65 + Int(26 * Rnd))
For I = 1 To Num
If FirPrize(I) = Temp Then GoTo Begin1
Next I
Num = Num + 1: FirPrize(Num) = Temp
RecNum = RecNum + 1: ReDim Preserve Rec(RecNum): Rec(RecNum) = Temp
Print FirPrize(Num); Spc(3);
Next J
End Sub
Private Sub Cd2()
Dim Num As Integer
Dim I As Integer
Dim J As Integer
Dim Temp As String * 1
Print
Print "获得二等奖的是:"
For I = 1 To 5
Randomize
Begin2: Temp = Chr(Int(26 * Rnd) + 65)
For J = 1 To UBound(Rec)
If Temp = Rec(J) Then GoTo Begin2
Next J
Num = Num + 1: SecPrize(Num) = Temp
RecNum = RecNum + 1: ReDim Preserve Rec(RecNum): Rec(RecNum) = Temp
Print SecPrize(Num); Spc(3);
Next I
End Sub
Private Sub Cd3()
Dim Num As Integer
Dim I As Integer
Dim J As Integer
Dim Temp As String * 1
Print
Print "获得三等奖的是:"
For I = 1 To 10
Randomize
Begin2: Temp = Chr(Int(26 * Rnd) + 65)
For J = 1 To UBound(Rec)
If Temp = Rec(J) Then GoTo Begin2
Next J
Num = Num + 1: ThiPrize(Num) = Temp
RecNum = RecNum + 1: ReDim Preserve Rec(RecNum): Rec(RecNum) = Temp
Print ThiPrize(Num); Spc(3);
Next I
End Sub
Private Sub Command1_Click()
Cd1
Cd2
Cd3
End Sub
Private Sub Form_Load()
Command1.Caption = "抽奖"
End Sub