+ -
当前位置:首页 → 问答吧 → 如何使数组中的元素随机排序

如何使数组中的元素随机排序

时间:2011-10-29

来源:互联网

比如说:
a(1)=6  
a(2)=8  
a(3)=9 
a(4)=3
a(5)=1

随机排列成  
   
a(1)=8  
a(2)=6  
a(3)=1 
a(4)=9
a(5)=3

并不是排序,而是随机排列,打乱原来的顺序。
请问如何实现?谢谢!

作者: xjghxc   发布时间: 2011-10-29

生成1到ubound(a)的随机数比如5,拿a(5)复制到b(1)
重复此步骤,注意如果是5需要重新生成……
然后b()就是了

作者: yiguangqiang88   发布时间: 2011-10-29

VB code
Option Explicit

Private Sub Form_Click()
Dim i As Integer, n As Integer
Dim a(10) As String, b(10) As String
Dim s As String
For i = 0 To 10
    a(i) = i
Next
s = ","
Cls
a: Randomize
i = Int((11 * Rnd))
If InStr(s, "," & i & ",") > 0 Then GoTo a Else s = s & i & ","
b(n) = a(i)
n = n + 1
If n < 11 Then GoTo a
For i = 0 To 10
    Print " " & b(i)
Next
End Sub

作者: yiguangqiang88   发布时间: 2011-10-30