学生进行排队,要求分别对男女生按身高进行升序排序,排序后男生在前,女生在后。排序示例如下。
(1)
实观上述功能的VB程序如下,在程序中出现的对象没有Caption属性的是。(选填,填字母:A . Label1 /B . Command1 /C . List1)
(2)
实现上述功能的VB程序如下,请在划线处填入合适的代码。
Const n = 10 ‘n 名学生
Dim a(1 To n) As
Integer ‘存放身高
Dim b(1 To n) As
String ‘存放性别
Private Sub
Form_Load()
'读取身高和性别数据,分别存储在数组a和b中,代码略
For i = 1 To n
List1.AddItem b(i) + Str(a(i))
Next i
End Sub
Private Sub
Command1_Click()
Dim i As Integer, j
As Integer, k As Integer, t As Integer
Dim s As String
i = 1:
Do While i<j
For k = i To j
If Then
If b(i) = "女" Or a(i) > a(k) Then
s = b(k): b(k) = b(i): b(i) = s
t = a(k): a(k) = a(i): a(i) = t
End If
Else
If Then s = b(k): b(k) = b(j): b(j) = s t = a(k): a(k) = a(j): a(j) = t End If End If Next k If b(i) = "男" Then i = i + 1 If b(j) = "女" Then Loop For i = 1 To n List2.AddItem b(i) + Str(a(i)) Next i End Sub
(3)
程序中加框处代码有错,请改正。
答案: 【1】C
【1】j = n【2】b(k) = "男"【3】j = j – 1
b(j) = "男" Or a(j) < a(k)