当前位置: 高中信息技术 / 综合题
  • 1. (2020高三下·浙江月考) 小周尝试一种新的数据排序方法,先将数据按照增量分成若干组,再分别对这几组数据进行排序并通过缩小增量直到增量为1的方法实现最终排序。如若要将数据“71,54,58,29,31,78,2”升序排序,增量的初值为3,则数据分为3组,为“71,29,2”“54,31”“58,78”,分别对各组数据排序后变为“2,31,58,29,54,78,71”,更新增量为1,最终通过后续处理实现排序。

    待排序数据存储在数组a中(a(1)…a(n)),共有n个数据,要求升序排序

    Dim a(0 To 100) As Integer

    Dim n As Integer

    Private Sub Command 1_Click()

        Dim i As Integer,m As Integer

        m=n\2

        Do While  '改错

           For i=1To m

              Call jpsort(i,m)    '调用过程jpsort()

           Next

            m=m\2

        Loop

       

    '显示输出结果

    End Sub

    Private Sub jpsort(start As Integer,w As Integer)

             For i=start To n Step w

             For j= To i+w Step-w    '填空

                 If a(j-w) >a(j) Then

                    t=a(j-w)::a(j)=t    '填空

               End If

           Next

        Next

    End Sub

    请回答以下问题:

    1. (1) 若要修改窗体上显示的内容为“跳跃排序”,应修改的属性名是(单选,填字母:A .Text/B .Caption/C .Load) 。
    2. (2) 划线部分的代码应填①;②;③
    3. (3) 若将虚线框中的程序段删除并要求使排序的结果不变,则应将Do While语句加框处的代码修改为

微信扫码预览、分享更方便