更多“若有定义char s[3][4];以下对数组元素s[i][j]的各种引用形式中错误的是()。 ”相关问题
  • 第1题:

    若有定义:int a[4][10];,则以下选项中对数组元素a[i][j]引用错误的是______。 (0<=i<4,0<=j<10)

    A.*(&a[0][0]+10*i+j)

    B.*(a+i)+j

    C.*(*(a+i)+j)

    D.*(a[i]+j)


    正确答案:B
    解析:本题中选项B是错误的引用,*(a+i)+j只代表了a[i][j]的地址。

  • 第2题:

    若有定义:int a[4][10];,则以下选项中对数组元素a[i][i]引用错误的是______。(0<=i<4,0=i<10)

    A.*(&a[0][0]十10*i+j)

    B.*(a+i)+j

    C.*(a+i)+j)

    D.*(a[i]+j)


    正确答案:B
    解析:本题中选项B是错误的引用,*(a+i)+j只代表了a[i][j]的地址。

  • 第3题:

    若有以下定义和赋值语句,int s[2][3]={0},(*p)[3];p=s; 则对s数组的第i行第j列(假设i,j已正确说明并赋值)元素地址的合法引用为:

    A.*(p+i)+j

    B.*(p[i]+j)

    C.(p+i)+j

    D.(*(p+i))[j]


    D 本题考查数组指针的使用。本题中,int(*pt)[3];定义了一个名为pt的指针变量,它可以指向每行有3个整型元素的二维数组。故选D。

  • 第4题:

    若有定义:int a[4][10];,则以下选项中对数组元素a[i][j]引用错误的是______。 (0<=i<4,0<=j<10)

    A.*(&a[0][0]+10*i+j)

    B.*(a+i)+j

    C.*(*(a+i)+j)

    D.*(a[i]+j)


    正确答案:B
    解析:本题中选项B是错误的引用,*(a+i)+j只代表了a[i][j]的地址。

  • 第5题:

    若有以下定义和赋值语句,“int s[2][3],(*p)[3]; p=s;”,则对数组s的第i行第j列(假设i,j已正确说明并赋值)元素地址的合法引用为()。

    A.*(p+i)+j

    B.*(p[i]+j)

    C.(p+i)+j

    D.(*(p+i))[j]


    A