2008-04-09
编写一个猜数游戏程序,当窗体Form1加载时随机给定一个小于100的整数然后给用户最多10次猜测机会.具体过程为:让用户利用Inputbox对话框输入所猜测的整数,未猜中时,用Msgbox提示所猜测的数过大或过小,让用户重新猜测,猜中时,在form1上显示出所猜测的次数和得分,计分的规则为:1次猜中100分,3次猜中90分,5次猜中80分,7次猜中70分,10次猜60分.若10次仍未猜中时,在form1上显示所猜的数并提示游戏结束.效果如下.
请问这个程序大致上是怎样写的?谢谢
Dim a(1 To 10) As Single, b As Single, i As Single, c As String, d As Single
Private Sub Form_Load()
Randomize
b = Int(Rnd * 99)
Form1。 Hide
For i = 1 To 10
a(i) = Val(InputBox("请进行第" & i & "次猜测" + Chr(10) + Chr(13) + " 输入数值(0-99)然后按ENTER键" + Chr(10) + Chr(13) + "单击确定按钮", "EXO706"))
If a(i) > b T...全部
Dim a(1 To 10) As Single, b As Single, i As Single, c As String, d As Single
Private Sub Form_Load()
Randomize
b = Int(Rnd * 99)
Form1。
Hide
For i = 1 To 10
a(i) = Val(InputBox("请进行第" & i & "次猜测" + Chr(10) + Chr(13) + " 输入数值(0-99)然后按ENTER键" + Chr(10) + Chr(13) + "单击确定按钮", "EXO706"))
If a(i) > b Then c = MsgBox("不对,太大了", vbMsgBoxSetForeground, EX0706)
If a(i) 1 Then d = 90
If i 3 Then d = 80
If i 5 Then d = 70
If i 7 Then d = 60
If a(i) = b Then Form1。
Show: Form1。Print "恭喜你!猜对了。": Form1。PrintForm: Form1。Print "您总共猜测了" & i & "次,"; "得分是" & d & "分": Exit Sub
If i = 10 Then Form1。
Show: Form1。Print "很遗憾!您的十次机会用完了": Form1。Print: Form1。Print "正确答案是" & b: Exit Sub
Next i
End Sub
我试过了应该可以的
如果有什么问题的话,请给我发个信息我好及时改进。
下面的文件是VB的
祝 快乐
下面是我改进了的
就是开头的定义不同和后面加了goto语句
Dim a(1 To 10) As Variant, b As Single, i As Single, c As String, d As Single
Private Sub Form_Load()
Randomize
b = Int(Rnd * 99)
Form1。
Hide
For i = 1 To 10
a(i) = InputBox("请进行第" & i & "次猜测" + Chr(10) + Chr(13) + " 输入数值(0-99)然后按ENTER键" + Chr(10) + Chr(13) + "单击确定按钮", "EXO706")
If a(i) = "" Then GoTo j
If a(i) > b Then c = MsgBox("不对,太大了", , "EX0706")
If a(i) 1 Then d = 90
If i 3 Then d = 80
If i 5 Then d = 70
If i 7 Then d = 60
If a(i) = b Then Form1。
Show: Form1。Print "恭喜你!猜对了。": Form1。PrintForm: Form1。Print "您总共猜测了" & i & "次,"; "得分是" & d & "分": Exit Sub
j:
If i = 10 Then Form1。
Show: Form1。Print "很遗憾!您的十次机会用完了": Form1。Print: Form1。Print "正确答案是" & b: Exit Sub
Next i
End Sub
我又想这样应该可以了,呵呵。
收起