![[单项选择题] 执行以下的循环后输出的值为()。public class Sun public static void main (String args[ ])int m,第1张 [单项选择题] 执行以下的循环后输出的值为()。public class Sun public static void main (String args[ ])int m,第1张](/aiimages/%5B%E5%8D%95%E9%A1%B9%E9%80%89%E6%8B%A9%E9%A2%98%5D+%E6%89%A7%E8%A1%8C%E4%BB%A5%E4%B8%8B%E7%9A%84%E5%BE%AA%E7%8E%AF%E5%90%8E%E8%BE%93%E5%87%BA%E7%9A%84%E5%80%BC%E4%B8%BA%28%29%E3%80%82public+class+Sun+public+static+void+main+%28String+args%5B+%5D%29int+m.png)
[单项选择题] 执行以下的循环后输出的值为( )。
public class Sun
public static void main (String args[ ])
int m=1000, s=0, n=0;
do
n=n+l;
s=s+(int)Math.pow(2,n);
while (s<=m);
System.out.println("n="+n+","+"s="+s);
A.n=9, s=1000
B.n=8, s=1022
C.n=9, s=1022
D.n=8, s=1000
正确答案:C
参考解析:本题考查对do-while循环的理解。本题完成的功能是求当20+21+22+...+2n最少需要多少项时才能满足大于数值m。 m=1000,当程序运行到第8次时,循环测试条件仍然为真,所以继续执行1次,当执行到第 9次时,s的值已经超过了1000。故本题答案是C。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)