itgle.com
更多“2、若i、j已定义成int型,则以下程序段中内循环体的总执行次数是()。 for(i=6;i>0;i--) for(j=0;j<4;j++){…}”相关问题
  • 第1题:

    以下程序的执行结果是______。 main() { int i,j,m=O,n=0; for (i=0;i<2;i++) {for (j=0;j<2;j++) if(j>=i) m=1;n++; printf("%d\n",n); } }

    A.4

    B.2

    C.1

    D.0


    正确答案:C

  • 第2题:

    有以下程序:include int f(int b[] [4]){int i,j,s=0; for(j=0;j<4;j++) {i=j;if(i>2)

    有以下程序: #include <stdio.h> int f(int b[] [4]) { int i,j,s=0; for(j=0;j<4;j++) { i=j; if(i>2) i=3-j; s+=b[i][j]; } return s; } main() { int a[4][4]={{1,2,3,4},{0,2,4,6},{3,6,9,12},{3,2,1,0}}; printf("%d\n",f(a)); } 执行后的输出结果是( )。

    A.12

    B.11

    C.18

    D.16


    正确答案:D
    解析:程序中,当j=0时,i=0,i>2不成立,s+=b[0][0)=1;j=1时,i=1,i>2不成立,s=s+b[1][1]=1+2=3;j=2时,i=2,i>2不成立,s=s+b[2][2]=3+9=12;j=3时,i=3,i>2成立,i=3-j,此时i=0,s=s+b[0][3]=12+4=16;j=4时循环结束。所以最后s值为16。

  • 第3题:

    若i、j已定义成mt型,则下列程序段中内循环体的总执行次数是( )。 for(i=6;i>0;i--) for(j=0;j<4;j++){…}

    A.20

    B.24

    C.25

    D.30


    正确答案:B
    本题考查for循环的使用。对于第1个for循环,任何一个i,内层j的循环都要使j~0到3,j=4时不符合,所以退出j循环;然后i减1,J仍然要从0~3,j=4时退出J循环直到i变成0,退出i循环。第一条for语句执行6次,第二条for语句执行4次,所以内循环体执行6*4=24次。

  • 第4题:

    若i、j已定义成int型,则下列程序段中内循环体的总执行次数是( )

    A.20

    B.24

    C.25

    D.30


    正确答案:B
    本题考查for循环的使用。对于第1个for循环,任何一个i,内层j的循环都要使j=0到3,j=4时不符合,所以退出J循环;然后i减1。j仍然要从0~3,j=4时退出j循环直到i变成0,退出i循环。第一条{or语句执行6次,第二条for语句执行4次,所以内循环体执行6*4=24次。

  • 第5题:

    若有以下程序main(){ int a[4][4]={{1,2,-3,-4},{0,-12,-13,14},{-21,23,0,-24},{-31,32,-33,0}}; int i,j,s=0; for(i=0;i<4;i++) { for(j=0;j<4;j++) { if(a[i][j]<0) continue; if(a[i][j]==0) break; s +=a[i][j]; } } printf("%d\n",s);}程序执行后的输出结果是


    正确答案:58
    在本题程序中,首先定义了一个4*4的二维数组a,并进行了初始化操作,然后定义了三个整型变量,i和j分别作为循环变量,而s作用一个记录和的变量被初始化为0。然后开始循环,第一层循环的循环变量i被初始化为0,循环结束条件是i<4,即循环执行四次,而第二层循环同样是4次,总循环此时为4´4=16次,如果逐次循环分析,工作量和花费时间太多,且一不小心容易出错,这种情况下,我们应该找出一个更简便的方法。
    从循环体中的if(a[i][j]<0) continue;我们可以知道,只要数组元素小于0,结束本次循环,即不参与求和运算,由if(a[i][j]==0) break;我们可以知道,只要数组元素等于0,结束本层循环,即同一行的数组元素都不用参加求和运算,从数组a的初始化情况我们可以看到,在第二行的第一个元素为0,即第二行都不参加求和运算,而第三行的第三个元素为0,即该行最后一个元素不参加求和运算。这样,参与求和运算的数组元素必须满足大于0,且其前面的该行元素无0出现。由此可以知道,变量s的最后结果应该为1+2+23+32=58。因此,程序最后的输出结果为58。

  • 第6题:

    以下程序运行后的输出结果是【】。include main(){int i=10,j=0;do{j=j+ i; i--;}while

    以下程序运行后的输出结果是【 】。

    include <iostream.h>

    main()

    {

    int i=10,j=0;

    do

    {

    j=j+ i; i--;

    }

    while(i>2);

    cout<<j;

    }


    正确答案:52
    52

  • 第7题:

    有以下程序:int f(int b[][4]){ int i, j, s=0;for(j=0j<4;j++){ i=j;if(i>2) i=3-j;s+=b[i][j];

    有以下程序:int f(int b[][4]){ int i, j, s=0; for(j=0j<4;j++) { i=j; if(i>2) i=3-j; s+=b[i][j]; } return s;}main(){ int a[4][4]={ { 1,2,3,4}, {0,2,4,6},{3,6,9,12 }, {3,2,1,0} }; printf("%d\n", f(a)); }执行后的输出结果是( )。

    A.12

    B.11

    C.18

    D.16


    正确答案:D
    解析:分析程序可知,函数f()中的for循环作用,是将数组前三行中的对角线上的元素,即b[0][0]、b[1][1]、b[2][2]和第一行的第四列元素即b[0][3]累加到变量s中,然后将s的值返回。在主函数中首先定义了一个4行4列的二维数组,接着通过输出语句输出函数f(a)的返回值。调用f(a)的返回值为a[0][0]+a[1][1]+a[2][2]+a[0][3]=1+2+9+4=16。所以,4个选项中选项D符合题意。

  • 第8题:

    有以下程序: main { int i,j,x=0; for(i=0;i<2;i++) { x++; for(j=0;j<=3;j++) {if(j=0;j<=3;j++) x++; } x++; } printf("x=%d\n",x); } 程序执行后的输出结果是( )。

    A. x=4

    B.x=8

    C.x=6

    D.x=12


    正确答案:B
    当i=0时,i<2成立,执行第一个for循环x自加为1,接着执行第二个for循环;j=0时j<=3成立,此时if不成立,执行x++后,x为2;接着j=1时,i<=3成立,继续循环,此时if成立,continue是跳出本次循环,继续下一次循环,不再执行x++了;接着j=2时,j<=3成立,此时if不成立,执行其后的语句;当j=4时,退出第二个循环,接着执行循环外部的x++,x为4;当i=1时,i<2成立,执行第一个循环,x=5,此时接着执行循环外部的语句,即第二个循环;j=0时j<3成立,此时if不成立,x++后,x为6,接着j为1时,j<=3成立,继续循环,此时if成立,不再执行x++了;接着J=2时,j<=3成立,此时if不成立,执行其后的x++,x为7;i=3时,j<=3成立,此时if成立,不再执行其后的语句了;当j=4时,退出第二个循环,执行循环外部的语句,最终x为8,故选B选项。

  • 第9题:

    若i、j已定义为int类型,则以下程序段中的内循环体的执行次数是( ) for( i=5; i; i--) for(j= 0; j<4;j++){……}

    A.20

    B.24

    C.25

    D.30


    正确答案:A
    问题所给的程序段的外循环是一个阶循环语句,它的初始化部分置变量i的初值为5,循环条件简写成i,即i!=0,每次循环后变量i的值减1。所以外循环共控制5次循环。内循环也是一个for循环语句,它的初始化部分置变量j的初值为0,循环条件是j<4,每次循环后变量j的值增1。所以内循环共控制4次循环。这样,如内循环的体内未曾对变量i和j有修改,在内、外循环一起控制下,内循环的体共被重复执行20次。正确解答是A。

  • 第10题:

    以下程序中循环体总的执行次数是 int i,j; for(i=6;i>1;i--) for(j=0;j<i;j++) {……}

    A.20

    B.261

    C.15

    D.25


    正确答案:A
    解析:本题中第1个for循环执行5次后结束,第2个for循环执行5次。第2个for循环中第1次执行了6次,第2次执行了5次,第3次执行了4次,第4次执行了3次,第5次执行了2次,共20次。

  • 第11题:

    若i.J已定义为int类型,则以下程序段中的内循环体的执行次数是()    for(i=4;i;i一一)      for(j=0;j<5;j++){„„} 

    • A、10
    • B、15
    • C、20
    • D、25

    正确答案:C

  • 第12题:

    单选题
    设inti,j;for(i=5;i;i--)for(j=0;j<4;j++){„}则循环体执行次数是()。
    A

    5

    B

    4

    C

    20

    D

    无限次


    正确答案: A
    解析: 暂无解析

  • 第13题:

    以下程序是求矩阵a、b的和,结果存入矩阵c中,请填空。 include main() {int a[4][4]={1,2,

    以下程序是求矩阵a、b的和,结果存入矩阵c中,请填空。 include<stdio.h> main() {int a[4][4]={1,2,6,7},{0,4,2,-8},{1,4,5,2},{2,4,6,8}}; int b[4][4]={{-4,0,7,9},{2,-7,7,4),{6,9,0,1),{8,8,6,5)}; int i,j,c[4][4]; for(i=0;i<4;i++) for(j=0;j<4;j++) c[i][j]=( ); for(i=0;i<4;i++) for(j=0;j<4;j++) printf("%d",c[i][j]); }


    正确答案:a[i][j]+b[i][j]
    a[i][j]+b[i][j] 解析:求两个矩阵的和只要将对应元素相加即可。

  • 第14题:

    以下程序的输出结果是#include <stdio.h>main(){ int i,j,sum; for(i=5;i>=1;i--) { sum=0; for(j=i;j<=i;j++) sum+=i*j; } printf("%d\n",sum);}


    正确答案:√
    本题考查对程序运行结果的计算。本程序的目的是输出sum的值,在输出sum值之前,需要进行一个for循环,该循环内部有一个for子循环。外层for语句的循环变量i的初始值为5,循环条件为i>=1,循环变量增值为-1。外层for语句每循环一次,都会将sum值重新赋0,所以,只要计算最后一次循环结束后sum的值作为输出即可。当i=1时,外层for语句进行最后一次循环,sum的值由内层for语句决定。内层for语句循环变量为j,初始值为j=i,循环条件为j<=i,循环变量增值为+1,由此可见,内层for语句只运行一次,结果就是sum=i*j。当i=1时,j=1,sum=1。

  • 第15题:

    若i、j已定义成int型,则以下程序段中内循环体的总执行次数是( )。 for(i=6;i>0;i--) for(j=0;j<4.j++){…}

    A.20

    B.24

    C.25

    D.30


    正确答案:B
    解析:本题考查的是嵌套for循环执行次数。对于外层i的循环中任何一个i,内层j的循环中的j都要从0变化到3,j=4时退出循环;然后外层i循环的i减少1,内层循环的i仍要从0变化到3,j=4时退出循环……直到外层i循环的i变为0,退出i循环。所以执行多重循环时,对外层循环变量的每一个值,内层循环的循环变量都要从初始值变化到终值。对外层循环的每一次循环,内层循环要执行完整的循环语句。外层for语句执行6次,内层for语句执行4次,所以内循环体执行6*4=24次。

  • 第16题:

    若i、j已定义为int型,则以下程序段中内循环的总的执行次数是 ( ) for(i=5;i>0;i- -) for(j=0;j<4;j+ +){…}

    A.20

    B.24

    C.25

    D.30


    正确答案:A

  • 第17题:

    以下循环体的执行次数是( )。 main() {int i,j; for(i=0,j=1;i<=j+1;i+=2,j--)cout<<i<<endl; }

    A.3

    B.2

    C.

    D.0


    正确答案:D
    解析: 本题考查考生对for循环中三个表达式的执行顺序及使用方法。首先执行第一个表达式,然后判断第二个表达式是否成立,如果成立则执行循环体,然后执行第三个表达式,随后再去判断第二个表达式。根据这个顺序,可以委有容易的判断出,循环体只执行了一次。

  • 第18题:

    以下循环体的执行次数是

    main( )

    {int i,j;

    for(i=0,j=1;i<=j+1;i+=2,j- -)cout<<i<<endl;

    }

    A.3

    B.2

    C.1

    D.0


    正确答案:D
    解析:本题考查考生对for循环中三个表达式的执行顺序及使用方法。首先执行第一个表达式,然后判断第二个表达式是否成立,如果成立则执行循环体,然后执行第三个表达式,随后再去判断第二个表达式。根据这个顺序,可以很容易的判断出,循环体只执行了一次。

  • 第19题:

    执行下列程序,其输出为( )。 int Sum,j; Sum=0; j=0; do{ j++; for(int i=5:i>j;i--). Sum=Sum+(i+j); {while(j<11=; } }

    A.45

    B.50

    C.60

    D.65


    正确答案:C

  • 第20题:

    有以下程序:int f(int b[][4]){int i, j, s=0;for(j=0; j<4; j++){i=j;if(i>2)i=3-j;S+=b[i][j];

    有以下程序: int f(int b[][4]) { int i, j, s=0; for(j=0; j<4; j++) { i=j; if(i>2)i=3-j; S+=b[i][j]; } return s; } main() { int a[4][4]={{1, 2, 3, 4}, {0, 2, 4, 6}, {3, 6, 9, 12}, {3, 2, 1, 0}}; printf("%d\n", f(a)); } 执行后的输出结果是______。

    A.12

    B.11

    C.18

    D.16


    正确答案:D
    解析:f(a)=a[0][0]+a[1][1]+a[2][2]+a[0][3]=1+2+9+4=16。

  • 第21题:

    若i和j已定义为int类型,则以下程序段中内循环体总的执行次数是______。 for(i=5;i;i--) for(j=0;j<5;j++){...}

    A.20

    B.25

    C.24

    D.30


    正确答案:B
    解析:对于第一个for语句,i从5至1,且对于第二个for语句,在i取5至1的某个值时,j又从0变化至5。

  • 第22题:

    若i、j已定义成int型,则以下程序段中内循环体的总执行次数是( )。

    A)20

    B)24

    C)25

    D)30


    正确答案:B

  • 第23题:

    设inti,j;for(i=5;i;i--)for(j=0;j<4;j++){„}则循环体执行次数是()。

    • A、5
    • B、4
    • C、20
    • D、无限次

    正确答案:C

  • 第24题:

    单选题
    若i.J已定义为int类型,则以下程序段中的内循环体的执行次数是()    for(i=4;i;i一一)      for(j=0;j<5;j++){„„}
    A

    10

    B

    15

    C

    20

    D

    25


    正确答案: D
    解析: 暂无解析