“ELSE”与“END IF”的正确使用
条件语句的一般格式是IF THEN 或是IF THEN
ELSE END IFwhile语句里的if,
END IF
可以看出:在条件语句中有时会不用“ELSE”,但“END IF”是一定要用的.对于“ELSE”与“END IF”的正确使用是用好条件语句的前提.本来这两种形式都不太复杂,用起来也很方便,但当把它与其它语句混在一起使用时,就不是那么简单了,“千难万险”将由此滋生.请看:
例 编写一个程序,输入任意一个大于1的正整数,对是否为质数作出判断.
第一险:“ELSE”的用法不当.根据题目要求,先画出程序框图,结合框图开始编写程序,前一部分的编写很顺利,程序如下:
INPUT “”;
IF THEN
WHILE AND
MOD THEN
ELSE
END IF
WEND
当“WEND”写完后,下一步该写什么呢?很多人会认为要写“ELSE”;其实,是错的,从前面程序语句的意义上分析可以看出这一点:如果,那么,再用“ELSE”,就是说时,执行下面语句.事实上,是对一个大于2的数进行了判断后,要输出结果.显然,不能用“ELSE”.
第二险:“END IF”放置不当,下面是某同学对上述问题编写的程序:
INPUT “”;
IF THEN
WHILE AND
MOD THEN
ELSE
END IF
WEND
ELSE
IF THEN
PRINT ;“是质数”
ELSE
PRINT ;“不是质数”
END IF
END IF
END
在上述程序中共用了三次“END IF”,按从上至下的顺序看,第一次“END IF”是终结“IF THEN”的;第二个“END IF”是终结“IF THEN”的;第三个呢?自然是终结“IF n>2 THEN”;前两个没问题,最后一个是有问题的.由第一险我们已经看出了“WEND”(在第一险中的程序)写完后,不能用“ELSE”.应该用什么?其实,要用“END IF”来终结上述的条件语句.而把它放置在最后“END”的上面是不妥的.
排险措施:对于条件语句中的“ELSE”与“END IF”要根据语句前后的意思,深入思考、仔细分析,还要真正领会“ELSE”与“END IF”的文字含义,这样再用就万无一失了.
本题的正确程序:
INPUT “”;
IF THEN
WHILE AND
MOD THEN
ELSE
END IF
WEND
END IF
IF THEN
PRINT ;“是质数”
ELSE
PRINT ;“不是质数”
END IF
END
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论