int i=0,s=0;while(s<20){i++;s+=i;}在这个的while循环语句中,其循环体被执行的次数为

题目
单选题
int i=0,s=0;while(s<20){i++;s+=i;}在这个的while循环语句中,其循环体被执行的次数为()。
A

4

B

5

C

6

D

7

参考答案和解析
正确答案: C
解析: 暂无解析
如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

下列语句中不是死循环的是

A.int i=10; while(1) { i--; if(i==1) break; }

B.for(int i=1;i<10;i++) { i--; }

C.int i=0; do{ i++; }while(i>=0) ;

D.int i=1; for(;;) i=i+1;


正确答案:A
解析:选项A) 中i自减到1时就会执行break语句跳出循环,选项B) 中i10永远成立不会跳出循环,选项C) 中第一次进入循环体后i>0永远不会跳出循环,选项D) 中未给出结束循环的条件。

第2题:

有以下程序 main( ) { int i=0,s=0; do{ if(i%2){i++;continue;} i++; s+=i; } while(i<7); printf("%d\n",s); } 执行后输出的结果是

A.16

B.12

C.28

D.21


正确答案:A
解析:本题的功能是计算0~7之间所有奇数的和(包括7)。

第3题:

以下程序的输出结果是

int f()

{ static int i=0;

int s=1;

s+=i; i++;

return s; }

main()

{ int i,a=0;

for(i=0;i<5;i++)a+=f();

printf("%d\n",a);}

A.20

B.24

C.25

D.15


正确答案:D
解析:函数的静态局部变量在编译时就赋初值,即只赋初值一次,在程序运行时它已有初值,以后每次调用函数时不再重新赋值,而只是保留上次函数调用结束时的值。

第4题:

若有以下程序:include using namespace std;int f(){static int i = 0;int s = 1;s+=

若有以下程序: #include <iostream> using namespace std; int f() { static int i = 0; int s = 1; s+=i; i++; return s; } int main() { int i,a = 0; for(i = 0;i<5;i++) a+=f(); cout<<a<<endl; return 0; } 程序运行后,输出的结果是

A.20

B.24

C.25

D.15


正确答案:D
解析:本题考核静态局部变量在函数中的使用。静态局部变量就是将局部变量说明为静态的。静态局部变量既有在局部域作用的特性(即变量只能在变量的作用范围内被访问),又可以永久存在(变量的值得以保留,并可继续使用)。静态局部变量只在第一次执行时初始化一次。在函数f中定义了一个静态局部变量i,它的初始值为0,还定义了一个局部变量s(它的初始值为1),用来返回计算所得值。函数f中所进行的数据加工是s+=i和i++。即每调用一次函数f,返回(i+1)的值后,i的值增1。再看主函数,在主函数main中,通过一个for语句连续调用f函数5次,并把每次调用f函数的返回值相加并存入a。最后输出a的值。在了解各函数功能以及调用关系后就可计算出a的值为15。

第5题:

在下面循环语句中循环体执行的次数为( )。int i=0,s=0; while(s<20) {i++; s+=i;}A、4B、5C、

在下面循环语句中循环体执行的次数为( )。

int i=0,s=0; while(s<20) {i++; s+=i;}

A、4

B、5

C、6

D、7


参考答案C

第6题:

( 7 )在执行语句序列int i=0; do i++; while(i*i<10);时, do 后面的循环体语句 i++ 被执行的次数为 【 7 】 。


正确答案:

第7题:

在下面循环语句中循环体执行的次数为( )。int i=0; do i++; while(i*i<10);A、4B、3C、5D、2

在下面循环语句中循环体执行的次数为( )。

int i=0; do i++; while(i*i<10);

A、4

B、3

C、5

D、2


参考答案A

第8题:

下列语句中不是死循环的是

A.int i=10; while(1) { i-- ; if (i= =1)break; }

B.for(int i=l ;i<10;i++) { i -- ; }

C.int i=0; do{ i++; }while(i >= 0);

D.int i=l ; for (;;)i = i+1;


正确答案:A
解析:选项A)中i自减到1时就会执行break语句跳出循环,选项B)中i10永远成立不会跳出循环,选项C)中第一次进入循环体后i>0永远不会跳出循环,选项D)中未给出结束循环的条件。

第9题:

以下程序的输出结果是 include int f( ) { static int i=0; int s=1 s+ =i;

以下程序的输出结果是 #include<iostream.h> int f( ) { static int i=0; int s=1 s+ =i; i++; return s;} void main( ) { int i,a=0; for(i=0 ;i<5;i++)a+=f( ); cout < < a;}

A.20

B.24

C.25

D.15


正确答案:D
解析:对函数的静态局部变量是在编译时就赋初值,即只赋初值一次,在程序运行时它已有初值,以后每次调用函数时不再重新赋值,而只是保留上次函数调用结束时的值。注意:静态函数只能用静态变量。

第10题:

下列各循环语句中,不是死循环的是( )。

A.int i=100; while(1){ i=i%100+1; if(i==20) break; }

B.int i,sum=0; for(i=1;;i++) sum=sum+1;

C.int k=0; do{ ++k; }while(k>=0);

D.int s=3379; while(s++%2+3%2) s++;


正确答案:A
解析:分析各个选项。选项A中,当变量i的值等于20时,会执行break;语句,即退出整个while循环体。所以选项A的循环语句不是死循环。其他各个选项的循环语句中,没有循环退出点,所以都是死循环。

更多相关问题