niusouti.com

执行下面程序后,则a的值是: int i=2, j=9,a; a=i+(j%3==0);A.2B.3C.4D.5

题目

执行下面程序后,则a的值是: int i=2, j=9,a; a=i+(j%3==0);

A.2

B.3

C.4

D.5


相似考题
参考答案和解析
10
更多“执行下面程序后,则a的值是: int i=2, j=9,a; a=i+(j%3==0);”相关问题
  • 第1题:

    下面的程序段运行后,输出结果是

    int i,j,x=0;

    static int a[8][8];

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

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

    a[i][j]=2*i+j;

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

    x+=a[i][j];

    printf("%d",x);

    A.9

    B.不确定值

    C.0

    D.18


    正确答案:C
    解析:本题主要考查的是用二维数组首地址和下标来引用二维数组元素的方法。通过分析可知,程序中的双重循环定义了一个如下的二维数组:
    0  1  2
    2  3  4
    4  5  6
    由于数组的下标是从0开始的,所以二维数组元素a[i][j]表示的是二维数组a的第i+1行、第j+1列对应位置的元素。

  • 第2题:

    下列循环体的执行次数是()。include main(){int i,j;for(i=0,j=1;i

    下列循环体的执行次数是( )。

    #include<stdio.h>

    main()

    {int i,j;

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

    printf("%d\n",j);

    }

    A.3

    B.2

    C.1

    D.0


    正确答案:C
    解析: 本题考查for循环。第一次循环前先判断循环条件,此时i=0,j=1,ij+1成立,循环第一次;第二次循环前先判断循环条件,此时i=1,j=0,(j--是先使用j的值再减1),ij+1不成立,结束循环。

  • 第3题:

    有以下程序: include void sort(int a[] ,int n){int i,j,t; for(i=0;i

    有以下程序: #include <stdio, h>void sort(int a[] ,int n){ int i,j,t; for(i=0;i<n;i ++ ) for(j =i+ 1;j<n;j ++ ) if(a[i]<a[j]){ t=a[1] ;a[i]=a[j] ;a[j] =t; }main( ){ int aa[10] = {1,2,3,4,5,6,7,8,9,10} ,i; sort(aa +2, 5); for(i =0;i<10;i++) prinff("%d," ,aa[i]); prinff("\n");程序运行后的输出结果是( )。

    A.1,2,3,4,5,6,7,8,9,10,

    B.1,2,7,6,3,4,5,8,9,10,

    C.1,2,7,6,5,4,3,8,9,10,

    D.1,2,9,8,7,6,5,4,3,10,


    正确答案:C
    解析:sort函数的功能是将给定的数由大到小排序。函数调用sort(aa+2,5);中的实参aa+2是aa[2]的地址,将其传给形参a[],使得形参中封a[0]的值为主函数中aa[2]的值,即3;实参5传给形参n,在sort函数中用于指定参加排序的5个数,从aa[2]到aa[6],所以本题输出的结果是:1,2,7,6,5,4,3,8,9,10,

  • 第4题:

    下面语句执行后,i的值是______。 public class Test11 { public static void main(String[] args) { int i=0; for( int j=10; j>5&&i<5; j-=3,i+=2 ) { i=i+j; } System.out.println (i); } }

    A.10

    B.9

    C.8

    D.12


    正确答案:D
    解析:变量i和j的初始值分别为0和10,判断结束条件j>5&&i5为true,执行i=i+j;得到i=10,再做j-=3和i+=2,分别得到i=12和j=7,判断结束条件j>5&&i5为false,停止循环,因此i的值为12,正确答案为D。

  • 第5题:

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

  • 第6题:

    阅读以下程序: include void main() { static int a[][3]={9,7,5,3,1,2,4,6,8}; int

    阅读以下程序:

    include<iostream.h>

    void main()

    {

    static int a[][3]={9,7,5,3,1,2,4,6,8};

    int i,j,s1=0,s2=0;

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

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

    {

    if(i==j)s1=sl+a[i][j];

    if(i+j==2)s2=s2+a[i][j];

    }

    cout<<s1<<","<<s2<<endl;

    }

    则该程序的输出结果为【 】。


    正确答案:1810
    18,10

  • 第7题:

    在执行完下面的程序后,变量k的值为【 】。

    int i, j, k;

    for(i=0, j=10; i<:j; i++,j--) k=i+j;


    正确答案:10
    10

  • 第8题:

    以下程序的输出结果是()。//includemain(){ int b[3][3]={0,1,2,0,1,2,0,1,2},i,j, t

    以下程序的输出结果是( )。 //include<iostream.h> main() { int b[3][3]={0,1,2,0,1,2,0,1,2},i,j, t=1; for(i=0,i<3; i+ +) for(j=i;j<=i; j+ +) t=t+b[i][b[j][j]]; cout<<t; }

    A.3

    B.4

    C.1

    D.9


    正确答案:B

  • 第9题:

    以下循环体的执行次数是

    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循环中三个表达式的执行顺序及使用方法。首先执行第一个表达式,然后判断第二个表达式是否成立,如果成立则执行循环体,然后执行第三个表达式,随后再去判断第二个表达式。根据这个顺序,可以很容易的判断出,循环体只执行了一次。

  • 第10题:

    以下循环体的执行次数是______。 main() { int i,j; for(i=0, j=1;i<=j+1; i+=2,j--) printf("%d\n",i) }

    A.3

    B.2

    C.1

    D.0


    正确答案:C

  • 第11题:

    阅读下面程序:includevoid main(){int i,j,row=0,column=0,min;static int a[3][3]

    阅读下面程序: #include<iostream.h> void main() { int i,j,row=0,column=0,min; static int a[3][3]={100,28,72,-30,2,-100}; min=a[0][0]; for(i=0;i<3;i++) for(j=0;j<3;j++) if(a[i][jl<min) { min=a[i][j]; row=i; column=j; } cout<<min<<","<<row<<","<<column<<endl; } 该程序的执行结果为( )。

    A.-100,2,3

    B.-100,1,2

    C.100,1,1

    D.100,0,0


    正确答案:B
    解析:该程序是找到数组a中的最小值,然后输出其数值及行、列。首先将min的值赋值为a中的第一行第一列的数值。然后在for两层循环中利用if语句进行大小比较,求出数组最小值,即-100。它的位置为第二行;第三列。标识由0开始计数,所以是1,2。

  • 第12题:

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

  • 第13题:

    下列程序段选择项,使i的运行结果为3的程序段是( )。

    A.int i=0,j=O; (i=2,(j++)+i);

    B.int i=1,j=0; j=i=((i=3)*2);

    C.int i=0,j=1; (j=1)?(i=1):(i=3);

    D.int i=1,j=1; i+=j+=1;


    正确答案:D

  • 第14题:

    以下程序运行后,输出结果是 ( ) main( ) {char ch[2][5]={"693","825"},*p[2]; int i,j,s=0; for(i=0;i<2;i+ +)p[i]=ch[i]; for(j=0;j<2;j+ +) for(j=0;p[i][j]>='0'& & p[i][j]<='9';j+=2) s=10 * s+p[i][j]-'0'; printf("%d\n",s); }

    A.6385

    B.22

    C.33

    D.693825


    正确答案:A

  • 第15题:

    执行下面程序后输出的结果是()。include using namespace std;int main(){ int a[4][4

    执行下面程序后输出的结果是( )。 #include <iostream> using namespace std; int main(){ int a[4][4]={{1,2,3,-4},{7,-12,-13,8},{-21,9,0,-24},{-31,10,-33,11}}; int i,j,s=0; for(i=0;i<4;i++){ for(j=0;j<4;j++){ if(a[i][j]>=0)continue; s+=a[i][j]; } } coat<<s<<endl; return 0; }

    A.141

    B.-138

    C.-1

    D.75


    正确答案:B
    解析:在内层循环中,遇到大于等于0的数,继续执行下次循环,否则执行s+=a[i][j],即把其值累加并保存在变量s中。所以本题双重循环的功能是:计算数组中所有负数的累加和。

  • 第16题:

    下面的程序段运行后,输出结果是 int i,j,x=0; static int a[8][8]; for(i=0;<3;++) for(j=0;<3;j++) a[i][j]=2*i+j; for(i=0;<8;++) x+=a[i][j]; printf("%d",x);

    A.9

    B.不确定值

    C.0

    D.18


    正确答案:C
    解析: 本题主要考查的是用二维数组首地址和下标来引用二维数组元素的方法。通过分析可知,程序中的双重循环定义了一个如下的二维数组:[*]
    由于数组的下标是从0开始的,所以二维数组元素a[i][j]表示的是二维数组a的第i+1行、第j+1列对应位置的元素。

  • 第17题:

    下面程序的运行结果是______。

    main()

    { int i=0,j=10,k=2,s=0;

    {i+=k;

    if(i>j)

    {printf("%d\n",s);

    break;}

    s+=i;}}


    正确答案:

  • 第18题:

    请读程序: include main( ) { int n[2],i,j,k; { for(i=0,i<2;i + + )n[i]=0;

    请读程序: # include<srdio.h> main( ) { int n[2],i,j,k; { for(i=0,i<2;i + + )n[i]=0; k=2; for(i=0;i<k;i+ +) {for(j=0;j<k;j+ +)n[j]=n[i]+l; print{("%d\n",n[k]); } 上面程序片段输出结果是 ( )

    A.不确定的值

    B.3

    C.23

    D.1


    正确答案:A

  • 第19题:

    有以下程序void sort(int a[],int n){ int i,j,t; for(i=0;i<n-1;i+=2) for(j=i+2;j<n;j+=2) if(a[i]<a[j]) { t=a[i]; a[i]=a[j]; a[j]=t; }}main(){ int aa[10]={1,2,3,4,5,6,7,8,9,10},i; sort(aa,10); for(i=0;i<10;i++) printf("%d,",aa[i]); printf("\n");}执行后的输出结果是A.1,2,3,4,5,6,7,8,9,10, B.10,9,8,7,6,5,4,3,2,1, C.9,2,7,4,5,6,3,8,1,10 D.1,10,3,8,5,6,7,4,9,2,


    正确答案:C
    sort函数的功能实际上是对数组中奇数位置上的数进行从大到小排序。排序后的结果应该为9,2,7,4,5,6,3,8,1,10。

  • 第20题:

    以下循环体的执行次数是( )。 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循环中三个表达式的执行顺序及使用方法。首先执行第一个表达式,然后判断第二个表达式是否成立,如果成立则执行循环体,然后执行第三个表达式,随后再去判断第二个表达式。根据这个顺序,可以委有容易的判断出,循环体只执行了一次。

  • 第21题:

    有以下程序: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符合题意。

  • 第22题:

    下列语句执行后,i的值是( )。 public class Test { public static void main(String[ ] args) { int i =0; for(int j=10; j>5&&i<5; j-=3,i+=2) i=i+j; System.out.println(i); } }

    A.8

    B.9

    C.10

    D.12


    正确答案:D
    解析:变量i和j的初始值分别为0和10,判断结束条件j>5&&i5为true,执行i=i+j;得到i=10,再做j-=3和i+=2,分别得到i=12和j=7,判断结束条件j>5&&i5为false,停止循环,因此i的值为12,正确答案为D。

  • 第23题:

    下面的程序段运行后,输出结果是 int i,j,x=0; static int a[8][8]; for(i=0;i<3;i++) for(j=0;j<3;j++) a[i][j]=2*i+j; for(i=0;i<8;i++) x+=a[i][j]; printf("%d",x);

    A.9

    B.不确定值

    C.0

    D.18


    正确答案:C
    解析:本题主要考查的是用二维数组首地址和下标来引用二维数组元素的方法。通过分析可知,程序中的双重循环定义了一个如下的二维数组:

    由于数组的下标是从。开始的,所以二维数组元素a[i][j]表示的是二维数组a的第i+1行、第j+1列对应位置的元素。

  • 第24题:

    有以下程序:includevoid sort(int a[],int n){int i,j,t; for(i=0;i

    有以下程序: #include <stdio.h> void sort(int a[],int n) { int i,j,t; for(i=0;i<n-1;i+=2) for(j=i+2;j<n;j+=2) if(a[i]<a[j]){t=a[i];a[i]=a[j];a[j]=t;} } main() { int aa[10]={1,2,3,4,5,6,7,8,9,10},i; sort(aa,10); for(i=0;i<10;i++) printf("%d.",aa[i]); printf("\n"); } 其输出结果是( )。

    A.1,2,3,4,5,6,7,8,9,10,

    B.10,9,8,7,6,5,4,3,2,1,

    C.9,2,7,4,5,6,3,8,1,10,

    D.1,10,3,8,5,6,7,4,9,2,


    正确答案:C
    解析:sort函数的功能实际上是对数组中奇数位置上的数进行从大到小排序。排序后的结果应该为9,2,7,4,5,6,3,8,1,10。