下列的程序段中y的计算结果为76543的是(  )

admin2013-11-28  28

问题 下列的程序段中y的计算结果为76543的是(  )

选项 A、x=34567
y=0
flag=.T.
DO WHILE flag
  y=x%10+y*10
  x=int(x/10)
  IF x>0
    flag=.F.
  ENDIF
ENDDO
B、x=34567
y=0
flag=.T.
DO WHILE flag
  y=x%10+y*10
  x=int(x/10)
  IF x=0
    flag=.F.
  ENDIF
ENDDO
C、x=34567
y=0
flag=.T.
DO WHILE !flag
  y=x%10+y*10
  x=int(x/10)
  IF x>0
    flag=.F.
  ENDIF
ENDDO
D、x=34567
y=0
flag=.T.
DO WHILE !flag
  y=x%10+y*10
  x=int(x/10)
  IF x=0
    flag=.T.
  ENDIF

答案B

解析 DO WHILE<条件>循环,首先判断循环条件是否为逻辑真,如果为逻辑真,则执行循环体内代码,所以C选项、D选项不会执行循环体内代码,不正确。A选项中条件语句IF x>0使得循环只执行一次,即跳出循环体,所以也不正确。B选项当x=0时,才跳出循环体,答案正确。
转载请注明原文地址:https://kaotiyun.com/show/QSop777K
0

最新回复(0)