执行下列程序,最后S的显示值为(  )。 SET TALK OFF s=0 i=2 x=10 DO WHILE s<=x s=s+i i=i+1 ENDDO ?s SET TALK ON

admin2010-08-21  24

问题 执行下列程序,最后S的显示值为(  )。
SET TALK OFF
s=0
i=2
x=10
DO WHILE s<=x
s=s+i
i=i+1
ENDDO
?s
SET TALK ON

选项 A、12
B、14
C、16
D、18

答案B

解析 DO WHILE-ENDDO语句的格式为:
DO WHILE<条件>
<命令序列>
ENDDO
执行该语句时,先判断DO WHILE处的循环条件是否成立,如果条件为真,则执行DO WHILE与ENDDO之间的<命令序列>(循环体)。当执行到ENDDO时,返回到DO WHILE,再次判断循环条件是否为真,以确定是否再次执行循环体。若条件为假,则结束该循环语句,执行ENDDO后面的语句。
先给3个变量赋初始值,使用一个DO WHILE循环语句来操作,判断条件是变量s是否小于等于x,如果大于x,则退出循环,否则执行循环体,执行s=s+i,s=2;再执行i=i+1后,i=3,重复此循环体的操作。题干中的循环步骤及结果见下表。

所以S最终的显示值是14。
转载请注明原文地址:https://jikaoti.com/ti/xNe0FFFM
0

最新回复(0)