有如下程序段:int i = 2; do{ i *=

有如下程序段:

int i = 2;
do{
    i *= i;
    cout<<'#';
    if(i>1000)break;
}while(1) ;

运行这个程序段时,输出字符‘#’的个数是( )。

答案
B
解析

程序执行过程如下:i*=i等价于i=i*i,第一次循环,i=4时,输出第一 个‘#’,此时 i不大于1000,循环继续,第二次循环,i=16时,输出第二 个‘#’,此时不大于1000,循环继续,第三次循环,i=256时,输出第三 个‘#’,此时不大于1000,循环继续,第四次循环, i=65536时,输出第 四个‘#’,此时i大于1000,循环停止,跳出循环,故输出四个‘#’。

题目信息

题号:7744
题型:单选题
知识点:计算机二级
难度:普通