问题
单项选择题
若有如下语句:
#include<iostream.h>
void main( )
int x=3;
do
x=x-2;
cout < < x;
while(!(--X) ) ;
则上面程序段
A) 输出的是1
B) 输出的是1和-2
C) 输出的是3和0
D) 是死循环
答案
参考答案:B
解析: do…while语句的一般格式为do循环体语句while(表达式) ;,先执行循环体语句一次,再判断表达式的值,若为真则继续执行循环,否则终止循环。本题中,先执行x=x-2,即为1。判断表达式的值,!(--x) 为真,x=0,继续循环。再次执行循环体语句后,x=-2,此时表达式的值为0,结束循环。