有以下程序 main() { int a[][3]=({1,2,3},{4,5,0}},(*pa) [3],i; pa=a; for(i=0;i<3;i++) if(i<2) pa[l][i]=pa[1] [i]-1; else pa[1][i]=1; printf("%d\n".a[0][1]+a[1][1]+a[1][2]); } 执行后输出结果是A.7B.6C.8D.无确定值

题目

有以下程序 main() { int a[][3]=({1,2,3},{4,5,0}},(*pa) [3],i; pa=a; for(i=0;i<3;i++) if(i<2) pa[l][i]=pa[1] [i]-1; else pa[1][i]=1; printf("%d\n".a[0][1]+a[1][1]+a[1][2]); } 执行后输出结果是

A.7

B.6

C.8

D.无确定值


相似考题
更多“有以下程序main(){inta[][3]=({1,2,3},{4,5,0}},(*pa) [3],i; pa=a; for(i=0;i<3;i++)if(i<2)pa[ ”相关问题
  • 第1题:

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

    A.7

    B.6

    C.8

    D.无确定值


    正确答案:A
    解析:本题定义了一个指向由3个元素组成的一维数组的指针变量pa,通过赋值让它指向具有2行3列的数组a,此时用指针变量pa,表示数组元素a[i][j]的形式是pa[i][j]。for循环执行了3次;第一次i值为0,执行pa[1][0]=pa[1][0]-1,执行后a[1][0]的值变为3;第二次i值为1,执行pa[1][1]=pa[1)[1]-1,执行后a[1][1]的值为4;第三次i值为2,执行pa[1][2]=1,执行后a[1][2]的值变为1。故printf语句输入的值为2+4+1=7。所以,A选项为所选。

  • 第2题:

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

    A.7

    B.6

    C.8

    D.无确定值


    正确答案:A
    解析:本题定义了一个指向由3个元素组成的一维数组的指针变量pa,通过赋值让它指向具有2行3列的数组a,此时用指针变量pa,表示数组元素a[i][j]的形式是pa[im][j])。for循环执行了3次;第一次i值为0,执行pa[1][0]=pa[1][0]-1,执行后a[1][0]的值变为3;第二次i值为1,执行pa=[1][1]=pa[1][1]-1,执行后a[1][1]的值为4;第三次i值为2,执行pa[1][2]=1,执行后a[1][2]的值变为1。故prinff语句输入的值为2+4+1=7。所以,A选项为所选。

  • 第3题:

    有以下程序 main() { int a[][3]={{1,2,3},{4,5,0}},(*pA) [3],i; pa=a; for(i=0;i<3;i++) if(i<2)Pa[1][i]=pa[1][i]-1; else pa[1][i]=1; printf("%d\n",a[0][1]+a[1][1]+a[1][2]); } 执行后输出结果是

    A.7

    B.6

    C.8

    D.无确定值


    正确答案:A
    解析:本题定义了一个指向由3个元素组成的一维数组的指针变量pa,通过赋值让它指向具有2行3列的数组a;此时用指针变量pa,表示数组元素a[i][j]的形式是Pa[i][j]。for循环执行了3次:第一次i值为0,执行pa[1][0]=pa[1][0]-1,执行后a[1][0]的值变为3;第二次i值为1,执行Pa[1][1]=Pa[1][1]-1,执行后a[1][1]的值为4;第三次i值为2,执行pa[1][2]=1,执行后a[1][2]的值变为1。故printf语句输入的值为2+4+1=7。

  • 第4题:

    有以下程序:includemain() {int a[3][3],*p,i; p=&a[0][0]; for(i=0;i<9;i++) p[i

    有以下程序: #include <stdio.h> main() { int a[3][3],*p,i; p=&a[0][0]; for(i=0;i<9;i++) p[i]=i+1; printf("%d\n",a[1][2]); } 程序运行后的输出结果是( )。

    A.3

    B.6

    C.9

    D.2


    正确答案:B
    解析:本题考查指向数组元素的指针变量。p=&a[0][0]是把该数组的第一个元素a[0][0]的地址赋给指针变量p,a[1][2]是数组中的第6个元素,根据for循环中的赋值可知,输出结果是6。

  • 第5题:

    有以下程序

    main( )

    { int a[][3]={{1,2,3},{4,5,0)},(*pa)[3],i;

    pa=a;

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

    if(i<2)pa[1][i]=pa[1][i]-1;

    else pa[1][i]=1;

    cout<<a[1][1]+a[1][1]+a[1][2]<<endl;

    }

    执行后输出结果是

    A.7

    B.6

    C.8

    D.无确定值


    正确答案:A
    解析:本题考察对二维数组的使用。按照要求分析各个数组元素的位置,即可以正确的得到答案为A。