|
|
被这题困惑住了,题目是这样的:
依次输入学生的数学成绩,然后显示出总分和平均分.
我是这样解的
1、建立3个按钮:请输入学生数量、请输入学生成绩(Enabled=False)、退出(Enabled=False)
2、建立2个时钟:Timer1(Interval=1000、Enable=False)、Timer2(Interval=0、Enable=False)
3、建立4个标签 abel1(Caption=总分、Visible=False)、Label2(Caption=""、Visible=False)、Label3(Caption=平均分、Visible=False)、Label4(Caption=""、Visible=False)
调试的时候出现的问题:输入N=10时,出现的对话框只有7个,改变Timer1.interval的属性值和Timer2.interval等式的值只会使对话框变为出现10个上下,总不能按照要求N值出现...由于本人是刚学VB,我想问的是是不是系统的延时有问题,谢谢大虾帮忙!
程序如下
Dim N, M As Integer, TS1$, TS2$
Dim SUM As Long, AVE As Single
Private Sub Timer1_Timer()
TS2$ = "请输入学生成绩(0到100之间的整数)" + Chr(13) + Chr(10) + "M="
M = Val(InputBox(TS2$, "学生成绩", 100, 5000, 1500))
SUM = SUM + M
End Sub
Private Sub Timer2_Timer()
Timer1.Enabled = False
Timer2.Enabled = False
总.Caption = SUM
平均.Caption = SUM / N
总分.Visible = True: 总.Visible = True
平均分.Visible = True: 平均.Visible = True
End Sub
Private Sub 请输入学生成绩_Click()
TS2$ = "请输入学生成绩(0到100之间的整数)" + Chr(13) + Chr(10) + "M="
M = Val(InputBox(TS2$, "学生成绩", 100, 5000, 1500))
请输入学生成绩.Enabled = False: 退出.Enabled = True
Timer1.Enabled = True: Timer2.Enabled = True
Timer2.Interval = 1000 * N + 900
SUM = M
End Sub
Private Sub 请输入学生数量_Click()
TS1$ = "请输入学生数量(1到15之间的整数)" + Chr(13) + Chr(10) + "N="
N = Val(InputBox(TS1$, "学生数量", 10, 5000, 1500))
请输入学生数量.Enabled = False: 请输入学生成绩.Enabled = True
End Sub
Private Sub 退出_Click()
End
End Sub
|
|