计算机二级

下面程序段的执行结果为( )。 int i=3,j=0,k=0; for(;i>0;--i) { ++k; do { ++j; if (i!=j) break; ++k; }while(j<5); } printf("i=%d j=%d k=%d\n",i,j,k);A.i=0 j=4 k=12B.i=0 j=5 k=5C.i=0 j=4 k=4D.i=0 j=3 k=3

题目

下面程序段的执行结果为( )。 int i=3,j=0,k=0; for(;i>0;--i) { ++k; do { ++j; if (i!=j) break; ++k; }while(j<5); } printf("i=%d j=%d k=%d\n",i,j,k);

A.i=0 j=4 k=12

B.i=0 j=5 k=5

C.i=0 j=4 k=4

D.i=0 j=3 k=3

如果没有搜索结果,请直接 联系老师 获取答案。
如果没有搜索结果,请直接 联系老师 获取答案。
相似问题和答案

第1题:

设 i,j,k 均为 int 型变量 , 则执行完下面的 for 循环 后 ,k 的值为 for(i=0,j=10;i<=j;i++,j--) k=i+j 设i,j,k均为int型变量,则执行完下面的for循环后, k的值为 i=0; for(j=10;i<=j;i++) { k=i+j; j=j-1;}

A.10

B.可以去调试来理解这个结果

C.9

D.11

E.12


B

第2题:

29、[XH]下列程序段执行后k值为()。 int k=0,i,j; for(i=0;i<5;i++) for(j=0;j<3;j++) k=k+1 ;

A.15

B.3

C.5

D.8


C

第3题:

15、执行下面的程序段,输出的结果为()。 int i=0,k=10,j=5; if(i+j) k=(i=j)?(i=1):(i=i+j); printf("k=%d\n",k);


C

第4题:

4、下列程序段的输出结果是___。 for(i=0,j=10,k=0;i<=j;i++,j-=3,k=i+j); cout<<k


1 * 1 = 1 1 * 2 = 2 1 * 3 = 3 2 * 2 = 4 2 * 3 = 6 3 * 3 = 9

第5题:

执行完下面的程序段后,k的值是 int k=0; for(int i=1;i<4;i++) { for(int j=1;j<4;j++) { k+=i+j; if(j==2) break; } }


9

第6题:

下列程序段的输出结果是___。 for(i=0,j=10,k=0;i<=j;i++,j-=3,k=i+j); cout<<k


10

第7题:

6、下面程序执行后的输出结果是()。 #include <stdio.h> int main() { int k=0,m=0,i,j; for (i=0; i<2; i++) { for (j=0; j<3; j++) k++ ; k-=j ; } m = i+j ; printf("k=%d,m=%d",k,m); return 0; }

A.k=0,m=3

B.k=0,m=5

C.k=1,m=3

D.k=1,m=5


A 函数fun的功能是求数组的n个元素之和。fun(a,5)=15。由于s岫是静态局部变量,所以保持l5不变,fun(b,4)=45,所以s=fun(a,5)+fun(b,4)=60。

第8题:

下列程序段执行后k值为()。 int k=0,i,j; for(i=0;i<5;i++) for(j=0;j<3;j++) k=k+1 ;

A.15

B.3

C.5

D.8


15

第9题:

分析下列程序,其最终执行结果是______。 main() { int n[3],i,j,k; for(i=0;i<3;i++)n[i]=O; k=2; for(i=0;i<k;i++) for(j=0;j<k;j++) n[j]=n[i]-1; printf("%d\n",n[0]); }

A.-2

B.-1

C.0

D.-3


正确答案:D
解析:当i为0,内循环在j为0时,执行n[j]=n[i]-1;,即n[0]=n[0]-1, n[0]值变为-1:在j为1时,执行n[j]=n[i]-1;,即n[1]=n[0]-1,将-2赋给n[1]。当i为1时,内循环在j为0时,执行n[j]=n[i]-1;,即n[0]=n[1]-1,n[0]值变为-3;在j为1时,执行n[j]=n[i]-1;,即n[1]=n[1]-1,将-3赋给n[1];最后n[0]和n[1]的值均为-3。