题型:综合题 题类:模拟题 难易度:困难
浙江省名校信息技术仿真训练卷(二)
实现上述功能的VB程序如下.但加框处代码有错,请改正。
Dim P As String,k As String,x As Integer
Function f(a As Integer)As Boolean
f=false
If Mid(p,a,Len(k))=k Then f=True
End Function
Private Sub Command1_Click()
Dim x As Integer,result As Strin9,flag As Boolean
result=""
p=Text1.Text
k=Text2.Text
For x=1 To Len(P)-Len(k)+1
If Not f(x) Then
result=result+Mid(p,x,1)
Else
‘(1)
End If
Next x
Text3.Text=result+ ‘(2)
End Sub
摸牌规则:
A.当某花色牌不足3张,则记录摸到的牌,继续摸下一张牌
B.当某花色的牌超过3张时,若摸到的卡牌点数大于本花色中已有卡牌点数的最小值,则替换本花色中点数最小的卡牌,否则,弃置摸到的牌。继续下一-张摸牌
C.当所有花色的牌均为3张时结束摸牌。然后按花色编号从小到大展示摸到的卡牌
例如:在某次摸牌后的卡牌如下表所示:
花色 |
黑桃 |
红桃 |
梅花 |
方块 |
||||||||
序号 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
点数 |
7 |
5 |
12 |
11 |
3 |
8 |
7 |
5 |
8 |
5 |
3 |
1)当下一次摸到“黑桃4”的牌时,4小于已摸到的[7,5,12],弃置摸到的牌,继续摸牌
2)当摸到“红桃9”的牌时,9大于已摸到的[11,3,8]的最小值3,红桃更新为[11,9,8],继续摸牌
3)当摸到“梅花9”的牌时,梅花点数更新为[7,5,9],达到所有花色的牌均为3张的目标,结束摸牌。
模拟此过程编写VB程序,程序运行界面如下图,单击“展示摸到的卡牌”按钮开始摸牌,满足条件时,在列表框中展示摸到的卡牌。
试题篮