【程序】 SET TALK OFF CLEAR X=3 DO WHILE .T. X=X+1 IF X=INT(X/3)*3 ? X ELSE LOOP ENDIF IF X>10 EXIT ENDIF ENDDO SET TALK ON RE

admin2010-06-18  10

问题 【程序】
SET TALK OFF
CLEAR
X=3
DO WHILE .T.
X=X+1
IF X=INT(X/3)*3
   ? X
ELSE
   LOOP
ENDIF
IF X>10
EXIT
ENDIF
ENDDO
SET TALK ON
RETURN
若将X=3改为X=12时,X的输出结果为 ______。   

选项 A、6
B、9
C、12
D、无任何显示

答案D

解析 INT()是取整数函数,如果循环体内有LOOP命令,那么当遇到LOOP时,就结束循环的本次执行,不再执行其后的语句,而是转回DO WHILE处重新判断条件。如果循环体包括EXIT命令,那么当遇到EXIT时,就结束该循环语句的执行,转去执行ENDDO后面的语句。
   通常LOOP或EXIT出现在循环体内嵌套的选择语句时,根据条件来决定是LOOP回去,还是 EXIT出去。
   当X=6和9时,只执行第一个IF循环。当X=12时,不仅执行第一个IF循环,也要执行第二个IF循环,退出DO WHILE循环。
   当X的初值为12时,进入DOWHILE此时X=13,此时不执行第一个IF,执行第二个IF循环,退出DO WHILE循环,最终没有执行“? X”语句,所以第(16)题的结果无任何显示。
转载请注明原文地址:https://jikaoti.com/ti/BDO7FFFM
0

最新回复(0)