题目来源:大工慕课 链接 原题:Visual Basic程序设计教程(第二版)龚沛曾主编,高等教育出版社 实验5-4 作者:Caleb Sung
题目要求
随机产生10个2位数,按从大到小递减的顺序排列,并显示排序结果。要求使用子过程。
参考代码
不使用子过程的版本
Private Sub Form_Click()
Dim a(
1 To 10)
As Integer
For i =
1 To 10
a(i) = Int(Rnd *
90 +
10)
Next i
For i =
1 To 9
For j =
9 To i
Step -
1
If a(j) < a(j +
1)
Then
t = a(j)
a(j) = a(j +
1)
a(j +
1) = t
End If
Next j
Next i
For i =
1 To 10
Print a(i);
If i
Mod 10 =
0 Then Print
Next i
End Sub
使用子过程的版本
Private Sub Form_Click()
Dim a(
1 To 10)
As Integer
For i =
1 To 10
a(i) = Int(Rnd *
90 +
10)
Next i
Call sort(a)
For i =
1 To 10
Print a(i);
If i
Mod 10 =
0 Then Print
Next i
End Sub
Sub sort(a%())
Dim i%, j%, t%
For i =
1 To 9
For j =
9 To i
Step -
1
If a(j) < a(j +
1)
Then
t = a(j)
a(j) = a(j +
1)
a(j +
1) = t
End If
Next j
Next i
End Sub