在窗体中有一个名称为run1的命令按钮,单击该按钮从键盘接收学生成绩,如果输入的成绩不在0~100分之间,则要求重新输入;如果输入的成绩正确,则进入后续程序处理。run1命令按钮的Click的事件代码如下:
Private Sub run1_Click()
Dim flag As Boolcan
result=0
flag=True
Do While flag
result=Val(InputBox("请输入学生成绩:","输入"))
If result>=0 And result<=100 Then
____________
Else
MsgBox “成绩输入错误,请重新输入”
End If
Loop
Rein ’成绩输入正确后的程序代码略
End Sub
程序中有一空白处,需要填入一条语句使程序完成其功能。下列选项中错误的语句是
A.flag=False
B.flag=Not flag
C.flag=True
D.Exit Do
参考答案:C
解析: 本题考查的是VBA编程基础、循环结构。Do…While…Loop循环结构是在条件式为真时,执行循环体,并持续到条件式结果为假或执行到Exit Do语句而退出循环。
在题目要求的事件代码中“If result>=0 And result<=100 Then”就是判断输入的成绩是否在0到100分之间,而语句“Else MsgBox”成绩输入错误,请重新输入””则是对输入的成绩不在0到100分之间的情况进行处理,所以可以判断出,要求填空的部分应该是针对输入成绩正确的情况进行处理,即代码判断条件满足,退出循环。
本题中选项A、B、D均可以使程序退出循环,而选项c则会使循环继续下去,成为死循环。