参考答案和解析
p=&a[0];
更多“int a[10], *p;则让p指向数组的首地址的语句是()。”相关问题
  • 第1题:

    下列定义中,( )是定义指向数组的指针p.

    A、int*p[5]

    B、int(*p)[5]

    C、(int*)p[5]

    D、int*p[]


    参考答案:B

  • 第2题:

    若有以下定义和语句,则对a数组元素地址的正确引用为 int a[2][3],(*p)[3]; p=a;

    A.*(p+2)

    B.p[2]

    C.p[1]+1

    D.(p+1)+2


    正确答案:C
    解析:本题考查了通过行指针来引用二维数组元素的方法。选项C中p[1]指向了数组a的第二行,p[1]+1则指向了第二行的第二个数据元素,其他几个选项都不正确。

  • 第3题:

    有如下定义语句:int a[]={1,2,3,4,5);,则对语句int *p=a;正确的描述是( )。

    A.语句int *p=a;定义不正确

    B.语句int *p=a;初始化变量p,使其指向数组对象a的第一个元素

    C.语句int *p=a;是把a[0]的值赋给变量p

    D.语句int *p=a;是把a[1]的值赋给变量p


    正确答案:B

  • 第4题:

    在下面语句中,其含义为“p为指向含n个元素的一维数组的指针变量”的定义语句是 ( )

    A.int p [n]

    B.int * p( );

    C.int * p(n);

    D.int( * p)[n]


    正确答案:D

  • 第5题:

    int(*p)[6];,当有定义int a[4][6],并让p指向它的语句是【 】。


    正确答案:p=a
    p=a 解析:p为指针,它指向一个一维数组,这个一维数组的每个元素又是一个数组,它有6个整型元素。

  • 第6题:

    若有语句:int a[3][4],(。P)[4];P=a;,则以下选项中叙述错误的是( )。

    A.系统将开辟一个名为P的二维数组,“o][o]中的值即为a[o][o]中的值

    B.P+1代表a[1][0]的地址

    C.P中将存放a数组的首地址

    D.P+2代表a数组最后一行的首地址


    正确答案:A
    (+P)[4]定义了一个数组指针。P可以指向类似于arry[][4]的数组,题设中,P不是一个二维数组,只是可以指向这类二维数组,因此选项A错误。P+1代表了第一行第一个元素的地址,P=a指向数组a的首地址,则B、C选项正确,同理可知选项D也正确。故答案为A选项。

  • 第7题:

    执行完下列语句

    int a,b,c=&a;

    int*&p=c;

    p=&b;

    后c指向

    A.a

    B.b

    C.c

    D.无效地址


    正确答案:B
    解析:p为c的引用,即两者实际上是一个指针,故p指向b后,c自然也指向b,故答案为B。

  • 第8题:

    假定有语句为"int *p=calloc(10+20,sizeof(int)),则p所指向的动态数组中所包含的元素个数为()。

    A10

    B20

    C30

    D40


    C

  • 第9题:

    指向数组元素为整型的一维数组的指针变量的定义是()。

    • A、int*p()
    • B、int(*p)()
    • C、int*p[4]
    • D、int(*p)[4]

    正确答案:C

  • 第10题:

    设有C语句int a[3][4];, 则每次移动过a数组一行元素的指针变量定义形式是()

    • A、int *p;
    • B、int **p;
    • C、int(*p)[4];
    • D、int *p[4];

    正确答案:C

  • 第11题:

    将数组a的首地址赋给指针变量p的语句是()


    正确答案:p=a

  • 第12题:

    单选题
    有说明语句int *p=new int[10];释放动态数组的正确语句是()
    A

    delete []p;

    B

    delete p[]

    C

    delete int[]p

    D

    delete p int[10]


    正确答案: D
    解析: 暂无解析

  • 第13题:

    若有定义int a[9],+P=a;,则P+5表示( )。A.数组元素a[5]的值B.数组元素a[5]的地址SXB

    若有定义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]。

  • 第14题:

    有如下定义语句:int a[]={1,2,3,4,5};,则对语句int*p=a;正确的描述是( )。

    A.语句int*p=a;定义不正确

    B.语句int*p=a;初始化变量p,使其指向数组对象a的第一个元素

    C.语句int*p=a;是把a[0]的值赋给变量p

    D.语句iht*p=a;是把a[l]的值赋给变量p


    正确答案:B

  • 第15题:

    说明语句int*(*p)();的含义是______。

    A.p是一个指向int型数组的指针

    B.p是指针变量,它构成了指针数组

    C.p是一个指向函数的指针,该函数的返回值是一个整型

    D.p是一个指向函数的指针,该函数的返回值是一个指向整型的指针


    正确答案:D

  • 第16题:

    在下列叙述中,错误的一条是______。

    A.定义char*string="China"中的string是一个字符串变量,其值为China

    B.若有一个多维数组a,则*(a+i)与a[i]等价

    C.int(*p)[4]表示p为指针变量,它指向包含4个元素的一维数组

    D.数组名代表数组的首地址,固定不变。指针变量可通过指向数组首地址来代表对应的数组,但其值可以改变


    正确答案:A

  • 第17题:

    若有定义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]的地址。

  • 第18题:

    在下列叙述中,错误的一条是______。

    A.有下列语句组,则c=(*p)(a,b)与c=max(a,b)等价 int max();int(*p)();int c;p=max;

    B.执行下列语句后,则*p的值为1 int a=1,*p;*p=&a;

    C.已知指针变量p1指向数组元素a[1],p2指向数组元素a[4],则p2-p1=4-1=3

    D.2个指针变量指向同一数组时可以进行比较,其值为1或0


    正确答案:B

  • 第19题:

    若有int a[10],*p=a;,则( )。

    A、p++可以使p指向下一个字节

    B、p+=2 相当于p=sizeof(a)/10

    C、p++可以使p指向下一个元素,即a[1]的首地址

    D、p+=2可以使p指向下一个元素,即a[1]的首地址


    参考答案C

  • 第20题:

    关于语句int i=10,?p=&i;叙述错误的是()

    • A、p的值为10
    • B、p指向整型变量i
    • C、?p表示变量i的值
    • D、p的值是变量i的地址

    正确答案:A

  • 第21题:

    有说明语句int *p=new int[10];访问动态数组元素的正确语句是()

    • A、int a=p;
    • B、int a=*p;
    • C、delete int[]p
    • D、delete p int[10]

    正确答案:C

  • 第22题:

    若使P指向包含30个整型元素的动态数组空间,则使用的定义语句为()。

    • A、int*p=newint[30]
    • B、int*p=newint(30)
    • C、int*p=new[30]
    • D、*p=newint[30]

    正确答案:A

  • 第23题:

    单选题
    假定有语句为"int *p=calloc(10+20,sizeof(int)),则p所指向的动态数组中所包含的元素个数为()。
    A

    10

    B

    20

    C

    30

    D

    40


    正确答案: B
    解析: 暂无解析

  • 第24题:

    单选题
    有说明语句int *p=new int[10];访问动态数组元素的正确语句是()
    A

    int a=p;

    B

    int a=*p;

    C

    delete int[]p

    D

    delete p int[10]


    正确答案: D
    解析: 暂无解析