试题

试题 试卷

logo

题型:综合题 题类:常考题 难易度:困难

浙江省温州十五校联合体2019-2020学年高二下学期信息技术期中考试试卷

小王基于选择排序算法编写了一个 VB 程序,功能如下:数组 a 有 n * n 个元素,按 n 行 n 列进行排列,按列进行升序排序。例如 6 * 6 的数组,第一列将 a(1),a(7),a(13),a(19),a(25) ,a(31) 进行排序。运行程序,在列表框 List1 中显示 n * n 个数列单击“排序”按钮 Command1,在列表框 List2 中显示排序后的结果,程序运行界面如图所示。

请回答下列问题:

(1)、n=6时运行结果如图所示,图中1处“47”在数组 a 中下标是(填数字)。
(2)、为了实现上述功能,请在划线处填写合适的代码。

Const n = 6

Dim a(1 To n * n) As Integer

Private Sub Form_Load()             '产生 n * n 个数组元素,每行按n个数显示在 list1 中
  For i = 1 To n * n

    a(i) = Int(Rnd * 90) + 10

    s = s + Str(a(i))

    If   ①    Then  

      List1.AddItem s

      s = “”

    End if
  Next i

End Sub

Private Sub Command1_Click()

  Dim i As Integer, j As Integer, w As Integer, s As String

  For i = 1 To n * n

    k = i

      For j = k + n To   ②   

        If a(k) > a(j) Then k = j

     Next j

     If a(k)=a(i)  Then t = a(k): a(k) = a(i): a(i) = t

   Next i

‘将排序后数组 a 的元素,按每行 n 个数显示在 list2 中,代码略
End Sub

 ② 

(3)、程序中加框处代码有错,请改正。
返回首页

试题篮