参考答案和解析
正确答案:C
解析:解答本题,首先要明白在对指针进行加、减运算的时候,数字“1”不是十进制的数“1”,而是指"1"个存储单元长度,而1个存储单元长度占多少存储空间,应该视具体情况而定。如果基本类型是 int型,移动1个存储单元的长度就是位移2个字节,如果基本类型是float型,移动1个存储单元的长度就是位移4个字节。所以p+13所指向的数组元素的地址:300H+(13*上标)4)H=352H。
更多“若有定义float a[15],*p=a;,且数组a的首地址为300H,则p+13所指向的数组元素的地址为()。A.334HB.3 ”相关问题
  • 第1题:

    若有定义int a[10],*p=a,则p+6表示( )。

    A.数组元素a[5]的值

    B.数组元素a[5]的地址

    C.数组元素a[6]的地址

    D.数组元素a[0]的值加上5


    正确答案:C
    解析: 指针中存放的是变量的地址,指针也可以进行加减运算,这时指针移动的最小单位是一个存储单元,而不是一个字节。所以题中p+6指的是将指针向后移动了6个存储单元,指向a[6],存放的是a[6]的地址。

  • 第2题:

    若有定义int a[10],*p=a,则p+6表示( )。

    A.数组元素a[5]的值

    B.数组元素a[5]的地址

    C.数组元素a[6]的地址

    D.数组元素a[0]的值加上5


    正确答案:C
    解析:指针中存放的是变量的地址,指针也可以进行加减运算,这时指针移动的最小单位是一个存储单元,而不是一个字节。所以题中p+6指的是将指针向后移动了6个存储单元,指向a[6],存放的是a[6]的地址。

  • 第3题:

    若有定义:int x[5], *p=x;则 p 的值为 ()。

    A.5

    B.数组 x 的首地址

    C.数组 x 的首元素

    D.无具体值


    *p=y;;x=y;

  • 第4题:

    若有定义“intb[8],*p=b;”,则p+6表示( )。A.数组元素b[6]的值B.数组元素b[6]的地址SX

    若有定义“intb[8],*p=b;”,则p+6表示( )。

    A.数组元素b[6]的值

    B.数组元素b[6]的地址

    C.数组元素b[7]的地址

    D.数组元素b[0]的值加上6


    正确答案:B
    指针中存放的是变量的地址,指针也可以进行增减运算,这时指针移动的最小单位是一个存储单元,而不是一个字节。所以题中“P+6”指的是将指针向后移动了6个存储单元,即指向uE63,存放的是b[6]的地址。

  • 第5题:

    若有定义int a[9],*p=a;,则p+5表示

    A.数组元素a[5]的值

    B.数组元素a[5]的地址

    C.数组元素a[6]的地址

    D.数组元素a[0]的值加上5


    正确答案:B
    解析: 本题考查了通过指针来引用一维数组元素的方法。题中*p=a;这一赋值语句是指针p指向了数组a的首地址,p+5是指针p向后移动了5个int类型的存储单元,所以p+5指向了数组元素a[5]。