VB 数组排序问题,请高手解答!

来源:百度知道 编辑:UC知道 时间:2024/06/20 01:22:46
怎么把一个动态的二维数组转化为一维数组,并把这个一维数组进行降续排列啊.

'给你个示例吧
Private Sub Form_Click()
Dim a() As Integer, B() As Integer, N As Integer
N = 3 '3*3
Cls
ReDim a(1 To N, 1 To N) As Integer
For i = 1 To N
For j = 1 To N
a(i, j) = Int(Rnd * 900) + 100
Print a(i, j);
Next
Print
Next
Print
N = (UBound(a, 1) - LBound(a, 1) + 1) * (UBound(a, 2) - LBound(a, 2) + 1)

ReDim B(1 To N) As Integer
N = (UBound(a, 1) - LBound(a, 1) + 1)
For i = LBound(a, 1) To UBound(a, 1)
For j = LBound(a, 2) To UBound(a, 2)
B((i - LBound(a, 1)) * N + (j - LBound(a, 2)) + 1) = a(i, j)
Next
Next

For i = 1 To UBound(B)
For j = i + 1 To UBound(B)
If B(i) < B(j) Then
t = B(i)
B(i) = B(j)
B(j) = t
E