当前位置: 高中信息技术 / 综合题
  • 1. (2020·浙江) 甲乙双方进行一场球类比赛,一局计分的规则是:赢1球得1分,用“1”表示;输1球失1分,用“0”表示。当任一方得分大于等于6分,且领先对方2分及以上,领先方赢一局。如甲选手一局比赛数据为“101110101”,表示甲选手得6分失3分,局比分

    小王用一个字符串记录了甲选手多局比赛数据,其中有一处错误,位于连续多个“0”的最后一个。为了找出错误,小王的处理方法如图a所示,对示例中疑似错误位置6和20分别修改数据,并统计每局比分。他编写了VB程序,功能如下:在窗体Form l的文本框Text l中输入记录数据,单击“分析”按钮Command 1,在列表框List 1中输出修改位置以及修改后每局的比分。程序运行界面如图b所示。

    图a

    图b

    1. (1) 下列对象中有Text属性的是(单选,填字母:A .Command 1/B .Form 1/C .Text 1)。
    2. (2) 实现上述功能的VB程序如下,请在划线处填入合适的代码。

      Private Sub Command 1_Click( )

          Dim sp As String, s As String s       ‘s存储甲选手多局比赛的记录数据, 长度小于50

          Dim a(1 To 50)As Integer, e(1 To 20)As Integer

          Dim i As Integer, j As Integer, k As Integer, n As Integer, m As Integer

          Dim f1 As Integer, f2 As Integer

          s=Text 1.Text

          n=Len(s)

          For i=2 To n

              a(i)=Val(

          Next i

          m=0 : i=1

          Do While i<=n

              k=i

              Do While a(i)=0 And i<=n       找出疑似错误位置

                  i=i+1

              Loop

              If  Then

                  m=m+1:e(m)=i-1

              End If

              i=i+1

          Loop

          For i=1 To m       ‘对每个疑似错误位置分别修改数据,并统计每局比分

               f1=0 : f2=0

               k=e(1)

               a(k)=1

               sp="" & k &""

               For j=1 To n

                   If a(j)=1 Then f1=f1+1 Else f2=f2+1

                   If  Then

                       sp=sp & "/" & f1 &":" & f2

                       f1=0 : f2=0

                   End If

               Next j

               If f1+f2>0 Then sp=sp & "" & f1 & ":"& f2

               List 1.AddItem sp

              

          Next i

      End Sub

    3. (3) 程序中加框处代码有错,请改正。

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