某班级学生为毕业晚会的一个男生节目设计一个仿“V”字队形,先筛选出班级里所有男生,然后将参演的所有男生按照身高,摆出中间低两边高(先右后左)的队形,如图 1 所示。


图1
小孟同学用 VB 编写模拟“节目队形”程序,功能如下:从数据库中导入所有学生的编号、性别和身高数据;单击“筛选并排序”Command1 按钮,筛选出所有男生的身高并按照从低到高的顺序进行排序,结果显示在文本框 Text1 中;单击“设计队形”Command2 按钮,队形的编号结果显示在文本框 Text2 中。程序运行界面如图 2 所示。

图2
举例说明如下:
实现上述功能的 VB 程序如下,请回答下列问题:
(1)请在划线处填入合适的代码。
①__________________
②__________________
③__________________
(2)程序代码中,加框处有错,请改正。
改正:___________________
Const n = 8
Dim h(1 To n) As Integer, num1(1 To n) As Integer, num2(1 To n) As Integer Dim sex(1 To n) As Boolean ' 男生 sex = True,女生 sex = False
Dim i As Integer, j As Integer, m As Integer Private Sub Form_Load()
'n 名学生(包括男生和女生)的编号、性别和身高由数据库导出,分别存储在数组 num1、h 和 sex 中,代码略! End Sub
Private Sub Command1_Click() For i = 1 To n - 1
For j = n To i + 1 Step -1
If sex(j) = True Then
If
① Then
t = h(j): h(j) = h(j - 1): h(j - 1) = t
t = sex(j): sex(j) = sex(j - 1): sex(j - 1) = t
t = num1(j): num1(j) = num1(j - 1): num1(j - 1) = t
End If
End If
Next j Next i
For i = 1 To n
If sex(i) Then
Text1.Text = Text1.Text + " " + Str(h(i))
End If
If Not sex(i) Then

: Exit For '改错
Next i
End Sub
Private Sub Command2_Click()
Dim L, R As Integer, mid As Integer
mid = Int((1 + m) / 2) L = 0: R = 0
② For i = 2 To m Step 2
R = R + 1
num2(mid + R) = num1(i)
L = L + 1
③ Next i
For i = 1 To m
Text2.Text = Text2.Text + " 男" + CStr(num2(i)) + "号 " Next i
End Sub