试题

试题 试卷

logo

题型:综合题 题类:常考题 难易度:普通

浙江省高中信息技术——循环与数组

数组整段移动:将一个长度为n的有序序列a(1)、a(2)…以整数t(1≤t≤n)为界划分为两段,并将序列a的前t个数移动到n位之后,保持这两段(t个数和n-t个数)之间的相对位置不变(即t个数和n-t个数各自有序)。

例如,长度为6的有序序列:38、42、59、61、69、78,当t=2时重排结果为:59、61、69、78、38、42。

小红编写了VB程序功能如下:程序运行时产生n个整数存储在数组a中,在文本框Text1中输入t,单击“对调”按钮Command1在列表框List2中输出t个数与n-t个数对调后的数字序列。程序运行界面如图所示。

为了实现上述功能,请在划线处填入合适的代码。

Const n = 10

Dim a (1 To 10) As Integer

Private Sub Form Load ( )

‘生成n个有序数 ,显示在List1中

‘代码略

End Sub

Private Sub Command1_ Click ( )

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

Dim temp As Integer

    ①      

For i=t+1 To n

  Temp = a(i)

  For j = i To i+1-t step -1

        ②      

  Next j

  a(j)=    ③      

Next i

For i=1 To n

  List2 AddItem Str(a(i))

Next i

End Sub

 ② ③ 

举一反三
【加试题】某一条形码是由13位数字组成的编码,其末位是校验码。条形码校验的方法如下:①除校验码之外,求其余12位编码中的奇数、偶数的数字之和;②将偶数的数字之和乘以3,加上奇数的数字之和;③取第②步得到结果的个位数字,用10减去该数字,将得到的结果存入变量m;④若m的值为10,则将m的值修改为0,否则不变;⑤若m和校验码相等则输出“校验码正确!”,否则输出“校验码错误!”。

现编写一个VB程序,实现如下功能:在文本框Text1中产生条形码数字序列,单击“校验”按钮Command1,在标签Label1中输出对应的校验信息,界面如图所示。实现上述功能的VB程序如下,但加框处代码有错,请改正

Private Sub Command1_Click()

     Dim s As String, x As Integer

     Dim n As Integer , js As Integer, os As Integer, m As Integer

     Js=0: os=0

     s = Text1.Text

         {#blank#}1{#/blank#}

If n <> 13 Then

    Label1.Caption = "条形码位数错误!"

Else

    For i = 1 To 12

    {#blank#}2{#/blank#}  

      If x Mod 2 <> 0 Then

        js = js + x

      Else

        os = os + x

      End If

    Next i

    m = os * 3 + js

       {#blank#}3{#/blank#}

    If m=Val(Mid(s,n,1)) Then

      Label1.Caption = "校验码正确!"

    Else

       Label1.Caption = "校验码错误!"

    End If

End If

End Sub

返回首页

试题篮