某班级(人数不超过40人)参加合唱比赛,需要整理队形。先将所有人按身高升序排好,再将人数每10人排成1排,每排中间低两边高。
编写VB程序,依据上述要求排队。运行程序,在列表框 List1中显示了排序前的人员身高,单击“排序”按钮Command1后,在列表框List2中显示身高升序排序结果,再单击“站位”按钮Command2后,按10人一排站好,结果显示在列表框List3中。界面如图所示。
Dim h(0 To 40) As Integer '学生身高
Dim n As Integer
Private Sub Form_Load()
'从数据库中读取身高,共n条记录,存入h数组中,代码略
End Sub
Private Sub Command1_Click()
For i =2 To n
h1 = h(i): j = i – 1
Do While
j = j - 1
Loop
For k = i To j +2 Step -1
h(k) = h(k - 1)
Next k
①
Next i
'在列表框 List2中输出排序结果,代码略
End Sub
Private Sub Command2_Click()
'按人数每10人一排
Dim x As Integer
x = n \ 10
For i =1 To x
Call fenpai( ② ) '过程fenpai作用:将人员按中间低两边高排好,代码略
Next i
If n Mod 10 >0 Then Call fenpai(x * 10 + 1, n)
'将站位结果输出在列表框 List3 中,代码略
End Sub