更多“以下程序段的执行结果是()。 int i,j,m=0; for(i=1;i<=15;i=i+4) for(j=3;j<=19;j=j+4) m++; printf("%dn",m);”相关问题
  • 第1题:

    该程序运行的结果是( )。

    #include

    #include

    #define M 100

    void fun(int m, int *a, int *n)

    { int i,j=0;

    for(i=1;i<=m;i++)

    if(i%7==0||i==0)

    a[j++]=i;

    *n=j;}

    main()

    { int aa[M],n,k;

    clrscr();

    fun(10,aa,&n);

    for(k=0;k

    if((k+1) ==0)printf("\n");

    else printf("M",aa[k]);

    printf("\n");}


    正确答案:
    7

  • 第2题:

    下列程序的输出结果是 #include"stdio.h" #define N 3 #define M 3 void fun(int a[M][N]) { printf("%d\n",*(a[1]+2));} main() { int a[M][N]; int i,j; for(i=0;i<M;i++) for(j=0;j<N;j++) a[i][j]=i+j-(i-j); fun(a);}

    A.3

    B.4

    C.5

    D.6


    正确答案:B
    解析:若有以下定义:inta[3][4],i,j;且当0=i3,0=j4,则可以有以下几种方式来引用数组中的第i行,第j列的元素:a[i][j],*(a[i]+j),*(*(a+i)+j),(*(a+i))[j],*(&a[0][0]+4*i+j)。

  • 第3题:

    以下程序的输出结果是 ( ) main( ) { int a[3] [3]={1,2},{3,4,},{5,6,},i,j,s=0; for(i=1;i<3;i+ +) for(j=0;j<i;j+ +) s+=a [i][j]; printf ("%d\n",s); }

    A.18

    B.19

    C.20

    D.21


    正确答案:A

  • 第4题:

    下列程序的输出结果是

    #include "stdio.h"

    #define N 3

    #define M 3

    void fun(int a[M][N])

    { printf("%d\n",*(a[1]+2));}

    main()

    { int a[M][N];

    int i,j;

    for(i=0;i<M;i++)

    for(j=0;j<N;j++)

    a[i][j]=i+j-(i-j);

    fun(a);}

    A.3

    B.4

    C.5

    D.6


    正确答案:B
    解析:若有以下定义:int a[3][4],i,j;且当0<=i<3,0<=j<4,则可以有以下几种方式来引用数组中的第i行,第j列的元素:a[i][j],*(a[i]+j),*(*(a+i)+j),(*(a+i))[j],*(&a[0][0]+4*i+j)。

  • 第5题:

    下列程序的输出结果是 #include"stdio.h" #define N3 #define M3 void fun(int a[M][N]) { printf("%d\n",*(a[1]+2));} main() { int a[M][N]; int i,j; for(i=0;i<M;i++) for(j=0;j<N;j++) a[i][j]=i+j-(i-j); fun(a);}

    A.3

    B.4

    C.5

    D.6


    正确答案:B
    解析: 若有以下定义:int a[3][4],i,j;且当 0=i3,0=j4,则可以有以下几种方式来引用数组中的第i行,第j列的元素:
    a[a][j],*(a[i]+j),*(*(a+i)+j),(*(a+i)[j],*(&a [0][0]+4*i+j)”。

  • 第6题:

    下列程序执行后的结果是______。

    public class ex24

    {

    public static void main(String[] args)

    {

    int j=10;

    a1: for(int i=3;i>0;i--)

    {

    j-=i;

    int m=l;

    a2: while (m<j)

    {

    if (i<=m)

    continue a1;

    j/=m++;

    }

    }

    System.out.println(j);

    }

    }

    下列嵌套的循环程序执行后,结果是______。 public class ax25 { public static void main(String[] args) { int sum=0; for(int i=0;i<=5;i++) { for(int j=10;j>3*i;j--) { sum+=j*i; } } System.out.println(sum); } }

    A.136

    B.127

    C.147

    D.153


    正确答案:C

  • 第7题:

    有以下程序

    #include <stdio.h>

    Main()

    { int i,j,m=1;

    For{i=i;i<3;1++}

    ( For(j=3;j>0;j--)

    {iF(i+j>3)Break;

    m*=i*j;

    }

    }

    PrintF(“m=%d\n”,m)

    }

    程序运行后的输出结果是

    A.m=6

    B.m=2

    C.m=4

    D.m=5


    正确答案:A
    解析:第一次循环i=1,j=3和j=2时都能执行m*=i*j,此时得到m的值为6;然后进行第二次循环i=2,j=3时会执行break语句,内部循环直接结束,此时i再加1,也会导致退出外部循环,所以最终结果m的值为6。

  • 第8题:

    有以下程序段: inti,j,m=0; for(i=1;i<;=15;i+=4) for(j一3;j<;=19;j+=4)m++; printf(‘‘%d\n‘‘,m); 程序段的输出结果是( )。

    A.12

    B.15

    C.20

    D.25


    正确答案:C

  • 第9题:

    以下程序的输出结果是______。 main() { int i,j,m=0; for (i=1;i<=15;i+=4) for(j=3; j<=19; j+=4) m++; printf("%d\n",m); }

    A.12

    B.15

    C.20

    D.25


    正确答案:C

  • 第10题:

    有以下程序: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。

  • 第11题:

    有以下程序

    #include<stdio.h>

    main()

    {

    int i,j,m=55;

    for(i=1;i<=3;i++)

    for(j=3;j<=i;j++) m=m%j;

    printf(“%d”,m);

    }

    程序的运行结果是( )。

    A.0

    B.1

    C.2

    D.3


    正确答案:B

  • 第12题:

    单选题
    写出程序的运行结果。 #include main( ) { int i=0,j=0,k=0,m; for ( m=0;m<4;m++ ) switch ( m ) { case 0:i=m++; case 1:j=m++; case 2:k=m++; case 3:m++; } printf ("/n%d,%d,%d,%d",i,j,k,m); } 该程序的执行结果是()。
    A

    0,1,2,5

    B

    0,1,2,4

    C

    0,1,1,3

    D

    0,1,2,3


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

  • 第13题:

    以下程序的输出结果是【 】。include main() {int i,j,sum; for(i=3;i>=-1;i-) (sum=0; fo

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

    include<stdio.h>

    main()

    {int i,j,sum;

    for(i=3;i>=-1;i-)

    (sum=0;

    for(j=1;j<=i;j++) sum+=i*j;

    }

    printf("%d\n,sum);

    }


    正确答案:√
    1 解析:本题考查的是for循环嵌套。外循环i变量从3递减到1,内循环变量j在每轮外循环的作用下从1递增到i,并在每轮外循环结束时,通过内循环求得sum的值,但由于外循环体的第一条语句是将变量sum初始化为0,所以每轮外循环结束时求得的sum值均被下一轮外循环执行时重新初始化为0,只有在最后一轮,当i=1时,内循环求得stan=1,跳出内循环,i的值减1变为0,不满足i>=1这个条件,结束外循环,此时输出sum的值为1。

  • 第14题:

    以下程序的执行结果是______。 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

  • 第15题:

    有以下程序 include main() { int i,j,m=55; for(i=1;i<=3;i++)

    有以下程序 #include <stdio.h> main() { int i,j,m=55; for(i=1;i<=3;i++) for(j=3;j<=i;j++) m=m%j; printf("%d\n",m); } 程序的运行结果是

    A.0

    B.1

    C.2

    D.3


    正确答案:B

  • 第16题:

    下面程序的输出结果是______。 main() { int a[3][4]={1,3,5,7,9,11,13,15,17,19,21,23}; int(*p)[4]=a,i,j,k=0; for(i=0;i<3;i++) for(j=0;j<2;j++) k=p[i][j]; printf("%d\n",k); }

    A.17

    B.18

    C.19

    D.23


    正确答案:C
    解析:p是指向长度为4的一维数组的指针变量,可看作是二维数组a的行指针,可以像使用数组名一样通过p带数组下标的形式来引用数组中元素,变量k最后是元素a[2][1]的值。

  • 第17题:

    有以下程序: void fun( int *a, int i, int j) { int t; if ( i<j ) { t=a[i];a[i]=a[j];a[j]=t; fun (a,++i,--j); } } main() { int a[]={1,2,3,4,5,6),i; fun(a,0,5) for( i=0; i<6; i++) printf("%d",a[i]); } 执行后的输出结果是( )。

    A.654321

    B.432156

    C.456123

    D.123456


    正确答案:A
    解析:函数fun()中有3个参数,参数a为一个指针变量,接收的实参可以是数组名,参数i和j分别表示数组元素的下标,当下标i小于下标j时,a[i]和a[j]交换,然后对自身进行调用,可见这是一个递归函数。其实现的功能是把数组a从下标为i的元素到下标为j的元素之间的所有元素反序存放。在主函数中调用fun()函数,把a数组从a[0]到a[5]之间的所有元素反序存放,最后输出从a[0]到a[5]的值,因此输出的值为6、5、4、3、2、1,.所以,A选项为所选。

  • 第18题:

    有如下程序段#include "stdio.h"void fun(int *a,int *b,int *c,int *d,int *e){ int i,j,k,m; for(i=0;i< *a;i++) for(j=0;j< *b;j++)  for(k=0;k<*c;k++)  for(m=0;m< *d;m++)  ++*e;}main(){ int a=10,b=10,c=10,d=10,e=0; fun(&a,&b,&c,&d,&e); printf("%d\n",e);} 则程序段的输出结果是A.10000 B.1000 C.100 D.0


    正确答案:A
    在本题中,程序首先定义了一个无返回值的函数fun,该函数带有五个整型的指针形参变量,然后通过一个四层循环来操作++*e;语句,由于*与++运算符的优先级一样,它们都是自右至左结合的操作,因此,++*e等价于++(*e),这个操作可描述为:先用地址取值,然后对其进行自加,由于是通过传址传值法的,因此,还需要将相加后的结果传递到实参中。
    在主函数中,定义五个整型变量并分别赋初值,然后调用fun函数,传递的参数是刚定义的五个整型变量的地址,采用的是传址传值法,能为实参带回一个结果值。从fun函数中我们不难看出,当变量a,b,c,d分别为10时,循环总共执行10000次,即自加进行了10000次,而且每次自加后都改变了实参的结果。因此,循环结束后,变量e的值为10000。本题的正确答案是A。

  • 第19题:

    以下程序的输出结果是______。 main() { int a[3][3]={{1,2},{3,4},{5,6}},i,j,s=0; for(i=0;i<3;i++) for(j=0;j<=i;j++) s+=a[i][j]; printf("%d\n",s); }

    A.18

    B.19

    C.20

    D.21


    正确答案:B
    解析:本题函数的功能是计算并输出一个二维数组对角线及对角线下面的元素之和。

  • 第20题:

    有以下程序: #include<stdio.h> main( ) {int i,j,m=1; for(i=1;i<3;i++) {for(j=3;j>0;j--) {if(i*j>3)break; m*=i+j; } } printf("m=%d\n",m); } 程序运行后的输出结果是( )。

    A.m=6

    B.m=2

    C.m=4

    D.m=3


    正确答案:A
    本题考查了多重for循环。当(i*j)>3时,跳出循环,本题中i=1,j=3,i*J后值为3,所以执行下边语句:m*=i+j,也可写成m=m*i+j,这时要注意优先级,所以m的值为6。

  • 第21题:

    下列程序的输出结果是 ( ) main( ) { int i,j,m=0,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

  • 第22题:

    以下程序中,fun函数的功能足求3行4列二维数组每行尢素中的最大值。请填空。 void fun(int,int,int(*)[4],int*); main() {int a[3][4]={{12,41,36,28},{19,33,15,27},{3,27,19,1}},b[3],i; fun(3,4,a,B); for(i=0;j<3;i++)printf("%4d",b[i]); printf("\n"); } void fun(int m,int n,int ar[][4],int*br) {int i,j,x; for(i=0;i<m;i++) {x=ar[i][0]; for(j=0;j<n;j++) if(( )) x=ar[i][j]; br[i]=x; } }


    正确答案:xar[i][j]
    xar[i][j] 解析:本题考查的是循环的嵌套。本题定义了二维数组a,存放3行4列的数组元素,定义了,一维数组b用于存放每行的最大数。存函数fun中,通过二重for循环求每行的最大数,外层for循环用于控制行数,内层for循环用于控制列数。当外层循环执行一次时,内层循环则执行4次,并求出了这一行的最大值x,最后将每一行求出最大值x赋值给存放最大值的数组br,故本题答案为xar[i][j]。

  • 第23题:

    写出程序的运行结果。 #include main( ) { int i=0,j=0,k=0,m; for ( m=0;m<4;m++ ) switch ( m ) { case 0:i=m++; case 1:j=m++; case 2:k=m++; case 3:m++; } printf ("/n%d,%d,%d,%d",i,j,k,m); } 该程序的执行结果是()。

    • A、0,1,2,5
    • B、0,1,2,4
    • C、0,1,1,3
    • D、0,1,2,3

    正确答案:A

  • 第24题:

    单选题
    有以下程序 #include  main() {  int i,j,m=55;  for(i=1;i<=3;i++)   for(j=3;j<=i;j++)m=m%j;  printf(%d,m); } 程序的运行结果是(  )。
    A

    1

    B

    0

    C

    2

    D

    3


    正确答案: C
    解析:
    只有i=3,j=3时,内层循环的控制调价j<=i才为真,才能执行m=m%j,即55=55%3=1。答案选择A选项。