题目

小王利用循环排序思想编写了一个VB程序,用于计算下一轮比赛的出场顺序。从数据库中读取本轮比赛的人员姓名存在数组xm中,成绩存在数组cj中(成绩均不重复)。编程实现将这些成绩进行循环升序排列。要求最低成绩的位置不变,然后依次进行升序排序,即从最小值开始向下尾首相连形成升序数列。程序运行界面如图所示。点击“排序”按钮,完成循环升序排序。 (1) “排序”按钮的对象名为 (2) 请在划线处填入合适代码。 Dim xm(1 to 100)As String ,cj(1 to 100)As Integer Dim flag(1 to 100)As Boolean Private Sub Form_ Load() ‘从数据库中读取数据,存储到相应数组中,并输出在列表框List1。第i个人,姓名为xm(i),成绩为cj(i)。人员数量存储到变量n中(1≤n≤100)。代码略 End Sub Private Sub Cmd__Click() Dim min As Integer, pmin As Integer min = cj(1): pmin = 1 For i=2 To n If cj(i) < min Then min = cj(i): Next i flag(pmin) = True pmin= pmin + 1 If pmin=n+1 Then pmin=1 For i=1 To n-2 k = pmin For j=1 To n If  Then k= j Next j If k <> pmin Then t = cj(k): cj(k) = cj(pmin): cj(pmin) = t C = xm(k): xm(k) = xm(pmin): xm(pmin) = c End If flag(pmin) = True pmin=pmin+1 Next i ’将排序后的人员姓名和成绩输出到列表框List2中,代码略。 End Sub (3) 加框处代码出错,请改正。 答案: 【1】Cmd 【1】pmin=i【2】cj(j) < cj(k) And flag(j) = False pmin = pmin Mod n+ 1
信息技术 试题推荐