“字符洗牌”程序模拟扑克洗牌的操作,为了打乱牌序,把手工的扑克牌中间抽一部分放到最上面,完成一次洗牌(如字串“1234ABCD”,若把中间的低给到第5个字符串抽出并保持原来的顺序放到前面,则一次洗牌操作后字符串变成“34A12BCD”也可以把扑克牌分成下两部分,把下面的部分放置到上面(如字符串“1234ABCD”,把第3个字符变成洗牌的目的,效果如图所示。
(1)
若要把窗体的标题名称由“Form1”改为“字符洗牌”,应改变窗体的属性。
(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中输出结果 End Sub ① ②
(3)
若加框处的语句改为TxtOut.Text=Str(s),则运行程序时会发生的错误消息为 (单选,填字母)
A .
B .
C .
D .
答案: 【1】Caption
【1】s=TxtIn.Text【2】Mid(s,k1,k2 k1+1)
B