VB编程:DO...Loop循环语句比较最大最小值
一、运行效果
二、编写心得
程序中,最大值和最小值的比较类似,先用一个布尔型变量“c”和“if”条件语句来区分第一次提示还是后续提示,输出相应的“输入提示框”;再用“if”条件语句和“isnumeric()”函数判断输入是否为数值,不是则用“exit for”跳出“do”循环;如果是数值则接着执行下一个“if”语句,控制第一次输入之后就改变“inputbox”的输入提示内容,每次输入之后都会提示一个最大或者最小值。之后就用“iif”语句来比较大小,大的赋值给b,或者小的赋值给b;最后在label中输出最后的比较结果。
这个程序主要是通过“do...loop”和“if”语句来实现循环和判断的。应该在窗体上添加一个label控件,记录显示已经输入过的数值,这样会比较好一些。
三、程序代码
- Private Sub Command1_Click()
- Dim a, b As Double, c As Boolean
- c = False
- Do
- If c = True Then
- a = InputBox("请输入数值,输入非数字结束。目前最大数为" & b, "输入")
- Else
- a = InputBox("请输入数值,输入非数字结束", , "输入")
- End If
- If IsNumeric(a) Then
- If c = False Then
- b = a
- c = True
- Else
- b = CDbl(IIf(CDbl(a) > b, a, b))
- End If
- Else
- Exit Do
- End If
- Loop
- Label1.Caption = "输入的数中最大的是:" & b
- End Sub
-
-
-
- Private Sub Command2_Click()
- Dim a, b As Integer, c As Boolean
- c = False
- Do
- If c = True Then
- a = InputBox("请输入数值,输入非数字结束。目前最小数为:" & b, "输入数值")
- Else
- a = InputBox("请输入数值,输入非数字结束", "输入数值")
- End If
- If IsNumeric(a) Then
- If c = False Then
- b = a
- c = True
- Else
- b = CDbl(IIf(CDbl(a) < b, a, b))
- End If
- Else
- Exit Do
- End If
- Loop
- Label1.Caption = "输入的数中最小的是:" & b
- End Sub