【加试题】某排序算法思想如下:若有11个桶,编号从0~10,随机产生多个整数,每产生一个整数时,就在以该整数位编号的桶中放一面小旗子,最后只要按顺序数每个桶中有几面小旗子,就能得到这几个整数的有序排列。例如2号桶中有1个小旗子,表示2出现了一次;3号桶中有1个小旗子,表示3出现了一次;5号桶中有2个小旗子,表示5出现了两次;8号桶中有1个小旗子,表示8出现了一次,按桶的编号顺序读出旗子数量,没有旗子的桶略过,得到有序整数为“2,3,5,5,8”。
为此,小李编写了一个VB程序,功能如下:运行程序,窗体加载时随机产生6个[0,9]的随机整数,并在列表框List1中依次显示排序前数据,单击“排序”按钮Command1,在列表框List2 中显示经过上述排序算法后的数据。运行结果如图所示。实现上述功能的VB代码如下,但加框处代码有错,请改正。
Dim a(10) As Integer '数组a表示桶的编号,如a(0)表示第0号桶
Private Sub Command1_Click()
Dim i As Integer, j As Integer
For i = 0 To 10
For j = 1 To ①{#blank#}1{#/blank#}
List2.AddItem CStr(i)
Next j
Next i
End Sub
Private Sub Form_Load()
Dim i As Integer
Randomize
For i = 0 To 10 '将数组初始化为0
a(i) = 0
Next i
For i = 1 To 6 '产生6个[0,9]的随机数
t = Int(Rnd * 10)
a(t) = '第t桶中小旗子数量加1 ② {#blank#}2{#/blank#}
List1.AddItem CStr(t)
Next i
End Sub