VB程序内显示块IF 没有end if……
书写不规范,不容易看出缺少End IF,应该这样写:
if val(text1.text)<500 then
label1.caption="你猜的太小了"
else
if val(text1.text)=500 then
label1.caption="你猜对了"
else
label1.caption="你猜的太大了"
end if
end if
一个if对应一个end if,在写程序时,写好if后立即换行写好end if,这样不容易出错。
扩展资料:
Visual Basic源自于BASIC编程语言。VB拥有图形用户界面(GUI)和快速应用程序开发(RAD)系统,可以轻易的使用DAO、RDO、ADO连接数据库,或者轻松的创建Active X控件,用于高效生成类型安全和面向对象的应用程序。
VB 的中心思想就是要便于程序员使用,无论是新手或者专家。VB使用了可以简单建立应用程序的GUI 系统,但是又可以开发相当复杂的程序。
if val(text1.text)<500 then
label1.caption="猜的太小"
else
if val(text1.text)=500 then
label1.caption="猜对"
else
label1.caption="猜的太大"
end if
end if
例如:
Private Sub Command1_Click()
Dim x As Integer
If x >= 90 Then
Text2.Text = "A等"
Else
If x >= 80 Then
Text2.Text = "B等"
Else
If x >= 60 Then
Text2.Text = "C等"
Else
If x < 60 Then
Text2.Text = "E等"
End If
End If ' 这里漏了个End If
End If
End If
End Sub
请留意代码里,变量x未赋值,请补上赋值代码,否则变量x将恒为0。
扩展资料:
(1)Logical_test 表示计算结果为 TRUE 或 FALSE 的任意值或表达式。
例如,A10=100 就是一个逻辑表达式,如果单元格 A10 中的值等于 100,表达式即为 TRUE,否则为 FALSE。本参数可使用任何比较运算符(=(等于)、>(大于)、>=(大于等于)、<=(小于等于等运算符))。
(2)Value_if_true表示 logical_test 为 TRUE 时返回的值。
例如,如果本参数为文本字符串“预算内”而且 logical_test 参数值为 TRUE,则 IF 函数将显示文本“预算内”。如果 logical_test 为 TRUE 而 value_if_true 为空,则本参数返回 0。如果要显示 TRUE,则请为本参数使用逻辑值 TRUE。value_if_true 也可以是其他公式。
参考资料来源:百度百科-IF函数
if val(text1.text)<500 then
label1.caption="你猜的太小了"
else
if val(text1.text)=500 then
label1.caption="你猜对了"
else
label1.caption="你猜的太大了"
end if
end if
一个if对应一个end if,在写程序时,写好if后立即换行写好end if,这样不容易出错。
End If
If n <= 2 * m Then MsgBox ("脚数小于头数的倍数,重新输入")
End If
这两条语句你直接把要执行的语句放到then的后面了,所以是不要 endif的。加了是多余的。会报错。
还有就是你的这个判断其实是个摆设,起不到实际作用。不管输入是否正确都会顺序执行下来。根据你的思路。你可以这样写:
Private Sub Form_click()
Dim m%, n%, x%, y%
m = Val(InputBox("请输入鸡和兔的总头数"))
j: n = Val(InputBox("请是输入鸡和兔的总脚数"))
If n Mod 2 <> 0 Then
MsgBox ("总脚数不是偶数")
GoTo j
End If
If n <= 2 * m Then
MsgBox ("脚数小于头数的倍数,重新输入")
GoTo j
End If
y = (n - 2 * x) / 4
x = m - y
Print "鸡有:"; x; " 只 "; "兔有:"; y; "只"
End Sub
IF.....THEN
......
ELSEIF ....... THEN
......
ELSE
.......
END IF
就可以了
广告 您可能关注的内容 |