参考答案和解析
正确答案:B
更多“若有定义语句: double x[5]={1.0,2.0,3.0,4.0,5.0},*p=x; 则错误引用 x 数组元素的是A)*p B ”相关问题
  • 第1题:

    若有下列定义,则对a数组元素地址的正确引用是( )。int a[5],*p=a;A.p+5 B.*a+1

    若有下列定义,则对a数组元素地址的正确引用是( )。

    int a[5],*p=a;

    A.p+5

    B.*a+1

    C.&a+1

    D.&a[0]


    正确答案:D
    本题考查数组元素的地址的引用。A中,p+5引用的是a[5]的地址,而数组a只有5个元素,即a[0]、a[1]、a[2]、a[3]、a[4],所以引用错误(注:数组元素下标从0开始);B中,*a+1指的是将数组a的第一个元素加1;选项C中,不存在这种引用方式;D中,&a[0]引用的是数组的首地址。

  • 第2题:

    若有定义:int x[10], *p=x;,则*(p+5)表示

    A.数组元素x[5]的地址

    B.数组元素x[6]的值

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

    D.数组元素x[5]的值


    数组元素 x[5] 的值

  • 第3题:

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

    A.5

    B.数组 x 的首地址

    C.数组 x 的首元素

    D.无具体值


    *p=y;;x=y;

  • 第4题:

    若有定义:int x[10], *p=x;,则*(p+5)表示:()。

    A.数组元素x[5]的地址

    B.数组元素x[5]的值

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

    D.数组元素x[6]的值


    D

  • 第5题:

    若有定义语句:double x[5]={1.0,2.0,3.0,4.0,5.0}, *p=x;则错误引用x 数组元素的是_______。

    A.*p

    B.x[5]

    C.*(p+1)

    D.*x


    B 解析:本题定义了一个有5个数组元素的—维数组x和指针变量p,且将x的首地址(即x[0])的地址)赋给了指针变量p,即p指向了x数组的第0号元素,所以*p的值为x[0]的值,选项A的引用正确;由于p+1就是x[1]的地址,所以*(p+1)所指向的数组元素为x[1],故选项C的引用正确;由于x就是数组x的首地址,所以*x即对x[0]的引用,所以选项D引用正确;由于数组最大下标是元素个数减一,所以选项B的引用越界。