主题:菜鸟请教:ELSE 与 END IF 有什么区别?
jxsniper
[专家分:50] 发布于 2007-07-27 17:33:00
[em18]ELSE 与 END IF 有什么区别?
INPUT t
IF t <= 40 THEN
m = 10 * t
s = 0
[color=FF0000]END IF[/color]
IF t > 40 THEN
m = (t - 40) * 15 * .97 + 400
s = (t - 40) * 15 * .03
END IF
PRINT t, m, s
END
把其中的END IF换成ELSE
不是也一样的吗
那么END IF和ELSE不是基本上没什么区别了吗?
回复列表 (共7个回复)
沙发
小小傻瓜 [专家分:150] 发布于 2007-07-27 17:40:00
如果只有一个条件就不要用else
程序可改为:
INPUT t
IF t <= 40 THEN
m = 10 * t
s = 0
ELSE
IF t > 40 THEN
m = (t - 40) * 15 * .97 + 400
s = (t - 40) * 15 * .03
END IF
END IF
PRINT t, m, s
END
区别就在防止出现错误信息。IF 条件判断语句就等于防火墙
加分好吗?
板凳
wangsdong [专家分:21390] 发布于 2007-07-27 17:41:00
end if表示前面的if语句到此结束
else表示不同于if的后面的条件执行else后面的语句
如:
IF t <= 40 THEN
m = 10 * t
s = 0
END IF
表示t<=40的时候执行
m=10*t
s=0
结束,如果t>40要想执行一些操作需要改成
IF t <= 40 THEN
m = 10 * t
s = 0
ELSE '表示t>40的时候执行以下操作
要执行的操作
END IF
3 楼
jxsniper [专家分:50] 发布于 2007-07-27 18:13:00
我明白了 是不是如果条件只有 2种情况 比如
INPUT A
IF A>=0 THEN B=1 ELSE B=2
PRINT B
END
用ELSE就可以了
但是如果条件有3种以上情况 比如>和<和= 那么必须用END IF 断开 再用IF
比如:
INPUT A
IF A>0 THEN B=1
END IF
IF A=0 THEN B=2
END IF
IF A<0 THEN B=3
END IF
PRINT B
END
这个就不能够用ELSE
不知道我理解到位了没?
4 楼
wzc1996 [专家分:1680] 发布于 2007-07-27 19:48:00
你的题可以ELSE 但不能用END IF .因为它不是块IF
不对!
1.END IF 要一起在最后写。
2. 只有在块IF时才用END IF,普通的IF不用!
块IF:
如:
IF <条件> THEN
<语句组1>
ELSE
<语句组2>
END IF
5 楼
Matodied [专家分:7560] 发布于 2007-07-27 20:48:00
1楼简直就是多此一举,既然t<=40不符合,那么t不就大于40了吗?干吗还要个判断呢?
6 楼
yaoyusheng [专家分:460] 发布于 2007-07-27 21:16:00
if 条件 then 语句1:语句2:语句3
if 条件 then
语句
end if
if 条件 then
语句1
else
语句2
end if
大体上就这三种吧.
7 楼
V2战警2 [专家分:390] 发布于 2007-07-28 17:09:00
如果用ELSE,也就是说上面的IF语句一定不对,而END IF说明块IF语句已经结束,下面的IF语句不一定不符合上面的IF语句。
[em1]加分!!!
我来回复