當前位置:成語大全網 - 新華字典 - VB選擇法排序

VB選擇法排序

Private?Sub Command1_Click()

Dim a(1 To 10) As Integer

For i = 1 To 10

a(i) = Int(Rnd * 10)

Print a(i);

Next i

Print

'以上十隨機得出10個數

For i = 1 To 9 '這裏開始是雙重循環

For j = i + 1 To 10

If a(i) > a(j) Then '如果前壹個數大於後壹個數則交換位置

t = a(i): a(i) = a(j): a(j) = t

End If

Next j

Print a(i);

Next i

Print a(i);

End Sub

I等於1時 就是拿第壹位和第二位比較 比較大的的數排後面 然後比較第壹位和第三位 For j = i + 1?

To 10 直到比較到最後壹位

i=2 時也是如此 循環9次就完成排序

5 3 2 7

i=1 時

J=2時 3 5 2 7

J=3時 2 5 3 7

j=4時 2 5 3 7

I=2時

j=3時 2 3 5 7

擴展資料

Private?Sub?Command1_Click()

Dim?a(10)?As?Integer

Dim?b?As?Integer

Dim?i?As?Integer

Dim?j?As?Integer

Dim?k?As?Integer

For?i?=?1?To?10

a(i)?=?Int(Rnd?*?90?+?10)

Print?a(i);

Next?i

Print

For?i?=?1?To?9

k?=?i

For?j?=?k?+?1?To?10

If?a(j)?<?a(k)?Then?k?=?j

Next?j

If?a(i)?>?a(k)?Then

b?=?a(i)

a(i)?=?a(k)

a(k)?=?b

End?If

Next?i

For?i?=?1?To?10

Print?a(i);

Next?i

Print

End?Sub

參考資料:

百度百科 - 選擇法排序