问题 单项选择题

已知n为一正整数,在下面的循环语句中,循环体的重复次数约为______。 s=0; i=1; while (i<n) {i=i*2;s=s+i; }

A.n-1

B.n/2

C.(n-1)2

D.log2n

答案

参考答案:D

解析:
i是循环控制变量,其值从1开始,到大于等于n时退出循环。i在循环体中的变化是每次乘以2,所以,假设k为循环次数,那么,需要2k>=n时才会退出循环。
因此,k>=log2n时循环终止。本题正确答案为选项D。

选择题
问答题 简答题