资源描述
“ELSE”与“END IF”的正确使用
条件语句的一般格式是IF THEN 或是IF THEN
ELSE END 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
展开阅读全文