问题
单项选择题
下列程序执行后,b的值应是( )。 public class Testss { public static void main(String args[]) { unsigned byte b=0; b- -; System.out.println("b="+b); } }
A.15
B.1
C.32
D.16
答案
参考答案:D
解析:do-while结构首先执行循环体,然后计算终止条件,若结果为true,则循环执行,直到布尔表达式的结果为false。在题目中,先执行do{i/2;}得i的值是5,再判断while(i- ->1)条件(判断结束后i的值是4),成立继续执行循环体do { i/=2;}得i的值是2;再判断while(i- ->1)条件(判断结束后i的值是1),成立继续执行循环体 do { i/=2;}得i的值是0;再判断while(i- - >1)条件(判断结束后i的值是-1),但条件不成立,退出do-while语句,最后i的值是-1。