当前位置: 高中信息技术 / 综合题
  • 1. (2020高二下·温州期中) 小明编写了一个VB程序对数组a(1 to 20)进行处理:首先随机生成20个两位正整数,然后对所有“是3的倍数”的数字进行升序排序,其余的数原位不动。

    在列表框List1中显示整理前的数据,单击“排序”按钮,整理结果显示在列表框List2中,程序运行界面如图所示。

    Dim a(20) As Integer

    Private Sub Form_Load()

        Randomize  '对随机函数进行随机初始化

        For i = 1 To 20

            a(i) =   ① 

            List1.AddItem Str(a(i))

        Next i

    End Sub

    Private Sub Cd1_Click()

        Dim Done As Boolean

        Dim i As Integer, j As Integer, k As Integer, t As Integer

        For i = 20 To 1 Step -1   

            If a(i) Mod 3 = 0 Then Exit For  'Exit For表示跳出For循环

        Next i

        If i = 0 Then

            Label1.Caption = "没有满足条件的数"

        Else                                    ‘对能被3整除的数进行排序

               ②  

            Do While Not Done

                j = i 

                Done = True

                k = j - 1

                Do While k >= 1

                   If a(k) Mod 3 = 0 Then

                        If a(k) > a(j) Then t = a(k): a(k) = a(j): a(j) = t:  Done = False

                           ③ 

                   End If

                   k = k - 1

                Loop

            Loop

        End If

        For i = 1 To 20

            List2.AddItem Str(a(i))

        Next i

    End Sub

    1. (1) “排序”按钮的对象名是(单选,填字母:A .Click/B .Cd1/ C .Command1)。
    2. (2) 请在划线处填入合适的代码。

       ② ③ 

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