选择法排序 算法思想: 设有n个数的数组a(1),a(2),...a(n),要求按递增的次序排列: 首先设变量k用于存放当前最小数的下标,然后按下列步骤进行: (1)从n个数中选出最小元素的下标,然后将最小数与第一个数交换位置,即a(k)与a(1)互换; ■ 先将a(1)与a(2)进行比较,k的初值为1; ■ 若a(2)
a(j) Then k = j ‘ 指针方向改变 Next j temp = a(i) a(i) = a(k) a(k) = temp Next i 从键盘上输入5个数,用选择排序法对这5个数从小到大排序。 Private Sub Command1_Click() Dim a(1 To 5) As Integer Dim i As Integer, j As Integer, , k As Integer, temp As Integer ' 以下循环实现对数组元素进行赋值(输入) For i = 1 To 5 a(i) = InputBox(" 请输入要排序的数据 ") Next i ' 以下二重循环实现排序 For i = 1 To 4 ' 比较的轮数 k = i ' 把 I 的值赋给指针 P For j = i + 1 To 5 ' 每轮循环的比较次数 If a(k) > a(j) Then k = j ' 指针方向改变 Next j temp = a(i) a(i) = a(k) a(k) = temp Next i ' 以下循环实现对排序后的数组元素进行输出 For i = 1 To 5 Print a(i); Next i End Sub