当前位置: 高中信息技术 / 综合题
  • 1. (2022·浙江模拟) 小李编写VB程序,功能如下:单击“生成数组”按钮Command1,则随机生成13个取值范围是1~13的正整数,分别存储到数组a中,对数组的元素进行升序排列,并在标签label1中显示;再单击“连续数”按钮Command2,则在排序后的数组a中查找连续个数最多(忽略重复数值)的一组数值(即连续数),若有两组连续数个数一样多,则取数值小的一组,将连续数显示在标签label2中。运行界面如图所示。

    若实现上述功能的程序如下,请在划线处填写合适代码。

    Dim a(1 To 13) As Integer

    Dim n As Integer

    Private Sub Command1_ Click( )

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

        Randomize

        n=13

        For i=1 To n

            a(i) = Int(Rnd * 13)+1

        Next i

        For i=1 To n-1

            For j=i+1 To n

                If a(j) < a(i) Then

                    t=a(j)::a(i)=t

                End If

            Next j

        Next i

        s=“”

        For i=1 To n

            s = s+ Str(a(i))

            If  Then s=s+“,”

        Next i

        Label1. Caption =s

    End Sub

    Private Sub Command2_ Click( )

        Dim i As Integer, j As Integer

        Dim t As Integer, k As Integer

        Dim max As Integer    '存储连续数个数最大值

        Dim begin As Integer     '存储连续数开始的数值

        k= 1

        max=1

        For i=2 To 13

            If a(i)=a(i-1)+1 Or a(i)=a(i-1) Then

                If  Then k=k+1

                If k > max Then

                    max= k

                    begin =

                End If

            Else

                k=1

            End If

        Next i

        s=" "

        For j=begin To begin+max-1

            s =s+ Str(j)

        Next j

        Label2. Caption = s

    End Sub

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