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小时内删除。