选择题

下列程序段执行以后, 内存变量 y 的值是
x=34567
y=0
DO WHILE x>0
y=x%10+y. 10
x=Int(x/ 10)
END DO

【正确答案】 D
【答案解析】

题目给出的程序段中, 用到了 DO WHILE„ENDDO 循环结构。 执行该语句时,先判断 DO WHILE 处的循环条件是否成立, 如果条件为真, 则执行 DO WHILE 和 ENDDO 之间的命令序列。 当执行到 ENDDO 时, 返回到 DO WHILE, 再次判断循环条件是否为真, 以确定是否再次执行循环体。 若条件为假, 则结束该循环语句, 执行 ENDDO 后面的语句。 循环体中还用到了算术运算符%, %是求余运算。 Int 为取整数函数, 返回指定数值表达式的整数部分。 根据所给初值和循环条件, 可以判断出第 1 次循环后 y=7, x=3456, 第 2 次后 y=76,x=345, 第 3 次后, y=765, x=34, 第 4 次后 y=7654, x=3, 第 5 次后 y=76543, x=0, 第 6 次对条件 x>0 进行判断, 结果为假, 故退出循环, 执行结束, 最终 y 的值即为 76543。