试题

试题 试卷

logo

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

浙江省台州市黄岩第二高级中学2017-2018学年高二下学期信息技术期中考试试卷

n个数据 冒泡升序排序需要经过n-1遍的加工,每一遍加工自下而上比较相邻两个数据,把较小者交换到上面,在第i遍加工过程中需要进行n-i对数据的比较,在某些情况下,第i遍加工过程中,在上面部分较小数据已经有序情况下,不需要再进行n-i对数据的比较。如对“17,18,19,24,23,20”这6个数据排序中,第1遍排序结束后数据为“17,18,19,20,24,23”,第2遍排序时不再需要对20及其前面4个数据进行比较。程序界面如下图所示

以下程序实现了冒泡排序的优化,请在划线处填写合适的代码。

Dim n As Integer

Dim a (1 to 100) As Integer

Private Sub Form_Load()

    ‘n=10,排序前生成的数据存储在数组a中,并在列表框List1中显示

    ‘代码略

End Sub

Private Sub Command1_Click()

  Dim i As Integer, j As Integer, start As Integer, t As Integer

          

  Do While i < n

    start = n

    For j = n To i Step     

        If a(j) < a(j - 1) Then

            t = a(j): : a(j - 1) = t

            start = j

        End If

    Next j

       

  Loop

  For i = 1 To n

    List2.AddItem Str(a(i))

  Next i

End Sub

举一反三
返回首页

试题篮