VB中randomize的作用

来源:百度知道 编辑:UC知道 时间:2024/07/05 05:18:18
Private Sub Command1_Click()
Text3.Text = ""
Randomize
Text1.Text = Val(Int(Rnd * 101))
Text2.Text = Val(Int(Rnd * 101))
Command2.SetFocus
Text3.Text = Val(InputBox("请输入计算结果:"))

End Sub

Private Sub Command2_Click()
If Val(Text3.Text) = Val(Text1.Text) + Val(Text2.Text) Then
Label1.Caption = "很好,答对了!"
Else
Label1.Caption = "做错了,再来一次吧!"
End If

End Sub

Private Sub Command3_Click()
End
End Sub
这里的randomize有什么用(是什么意思),为什么即使去掉后效果也是一样的??
请举例说明,讲得通俗点。

初始化随机种子。这个好像差不多。
你验证个程序就明白了:
Private Sub Form_Load()
Text1 = Rnd
End Sub

Private Sub Form_Load()
Randomize
Text1 = Rnd
End Sub

randomize表示用系统时间做随机数种子,因此保证每次运行时产生的随机数不重复,如果没有randomize,比如下面的程序
dim num
num=rnd*1000
每次程序运行时num都是一样的

randomize的作用是分配一个随机种子,VB运行库自然会认识他,他就相当于rnd函数的助手,没有randomize时rnd函数会重复,VB创造者可能是先创建了rnd机制,后来再用一个randomize来弥补他的不足。