当前位置: 高中信息技术 / 综合题
  • 1. “字符洗牌”程序模拟扑克洗牌的操作,为了打乱牌序,把手上的扑克牌中间抽一部分放到最上面,完成一次洗牌(如字符串“1234ABCD”,若把中间的第3个到第5字母抽出并保持原来的顺序放到最前面,则一次洗牌操作后字符串变成“34A12BCD”),也可以把扑克牌分成上下两部分,把下面的部分放置到上面(如字符串“1234ABCD”,把第3个字符到最后一个字符移到前面,变成“34ABCD12”),多次重复做这个动作,就能达到洗牌的目的,效果如图所示。

     

    1. (1) 若要把窗体的标题名称由“Form1”改为“字符洗牌”,应改变窗体的属性。
    2. (2) 完成上述功能的程序代码如下,请在划线处填入合适的代码

      Private Sub Command1_Click()

          Dim r As Integer, k1 As Integer, k2 As Integer

          Dim s As String, n As Integer

         '从文本框TxtIn中获取字符串

          Randomize

          r = Int(Rnd() * 10) + 1   '随机生成洗牌次数

          n = Len(s)

          Do While r >= 1        '洗牌操作

              k1 = Int(Rnd() * (n - 2)) + 2

              k2 = Int(Rnd() * (n - k1 + 1)) + k1

              s =  + Mid(s, 1, k1 - 1) + Mid(s, k2 + 1, n - k2)

              r = r - 1

          Loop

      TxtOut.Text = s   ' 在文本框TxtOut中输出结果

      End Sub

    3. (3) 若加框处的语句改为TxtOut.Text = Str(s),则运行程序时会发生的错误消息为_________(单选,填字母)
      A . B . C . D .

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