更多“对于int a[3][7]下列表示中错误的是A.*(*a+3)B.*(a+1)[5]C.*(*(a+1))D.*(&a[0][0]+2) ”相关问题
  • 第1题:

    执行下面的语句后,表达式*(p[0]+1)+**(q+2)的值为______。 int a[]={5,4,3,2,1},*p[]={a+3,a+2,a+1,a},**q=p;

    A.8

    B.7

    C.6

    D.5


    正确答案:D
    解析:p为指针数组,其元素分别为指向数组a的4个元素的指针。q为指向指针的指针变量,其初值为指针数组p的首地址。所以:表达式*(p[0]+1)+**(q+2)=*(a+3+1)+**(p+2)即是*(a+4)+*(a+1)=a[5]+a[2]=1+4=5。

  • 第2题:

    执行下面的语句后,表达式*(p[0]+1)+**(q+2)的值为______。int a[]={5,4,3,2,1},*p[]={a+3,a+2,a+1,a},**q=p;

    A.8

    B.7

    C.6

    D.5


    正确答案:D

  • 第3题:

    设有以下定义:int a[3][3] = {1, 2, 3, 4, 5, 6, 7, 8, 9}; int (*ptr)[3] = a, *p = a[0];则以下能够正确表示数组元素a[1][2]的表达式是

    A.*(a[1]+2)

    B.*(*(p + 5))

    C.(*ptr + 1)

    D.*(*(a + 1) + 2)


    错误

  • 第4题:

    有以下定义: int a[4] [3]={1,2,3,4,5,6,7,8,9.10,11,12}; int(*ptr)[3]=a,*p=a[0]; 则下列能够正确表示数组元素a[1][2]的表达式是( )。

    A.*((*ptr+1}+2)

    B.*(*(p+5))

    C.(*ptr+1)+2

    D.*(*(a+1)+2)


    正确答案:C
    解析:本题定义了一个二维数组a,一个含有3个元素的指针数组ptr和一个指针变量p,并使指针数组和指针变量p指向数组a。

  • 第5题:

    设有以下定义: int a[3][3]={1,2,3,4,5,6,7,8,9}; int(*Ptr)[3]=a,*p=a[0]; 则下列能够正确表示数组元素a[1][2]的表达式是_______。

    A.*((*ptr+1)[2])

    B.*(*(p+5))

    C.(*ptr+1)+2

    D.*(*(a+1)+2)


    正确答案:D
    解析:*(p+5)所指向的数组元素是a[1][2],所以B不对;ptr所指向的是—个含有三个元素的一维数组,所以A和C是错误的。