若有说明语句“inta[5],*p=a;”,则对数组元素的正确引用是()。A、a[p]B、p[a]C、*(p+2)D、p+2

题目

若有说明语句“inta[5],*p=a;”,则对数组元素的正确引用是()。

  • A、a[p]
  • B、p[a]
  • C、*(p+2)
  • D、p+2
如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

若有以下说明和语句 int c[4)[5],(*p)[5]; p=c; 能够正确引用c数组元素的是

A.p+1

B.*(p+3)

C.*(P+1)+3

D.*(p[0]+2)


正确答案:D
解析:本题中定义了一个二维数组c和一个指针数组p并初始化让它指向 c,显然此时p中的各元素为地址,选项A中p+1,此时其中的1代表的长度是整个二维数组c的长度,故p+1将让p指向c数组后面的元素,故不能引用c数组中的成员,选项D中p[0]指的是指针数组中的第一个元素的地址即c的首地址,此时的1的长度代表的是数组C中一行的长度,故p[0]+2代表的是第三行的首地址,而*(p[o]+2)将代表第三行的第一个元素的地址。

第2题:

若有以下定义,则对a数组元素的正确引用是( )。 int a[5],*p=a;

A.*&a[5]

B.*a+1

C.*(p+5)

D.*(a+2)


正确答案:D

第3题:

若有如下定义,则以下哪个是对数组元素的正确的引用。inta[10],*p;p=a;A、*则以下选项中,正确的赋值语句是()

A、*p=8;

B、*q=5;

C、q=p;

D、p=1;


参考答案:A

第4题:

若有以下程序

main()

{ int p,a=5;

if(p=a!=0)

printf("%d\n",p);

else

pfintf("%d\n",p+2);

}

执行后输出结果是【 】。


正确答案:√
1 解析:首先计算if语句后面的表达式,根据运算符的优先级可知,先算“a!=o”,该值为1,再把1赋值给p,结果为1(真),执行其后的printf语句,输出的值为1。

第5题:

若有程序片段: int a[12]={0},* p[3],* *pp,i for (i=0;i<3;i++) p[i]=&a[i*4]; pp=p; 则对数组元素的错误引用是 ( )

A.pp[0][1]

B.a[10]

C.p[3][1]

D.*(*(p+2)+2)


正确答案:C

第6题:

若有下面的程序片段:

int[12]={0},*p[3],**pp,i;

for(i=0;i<3;i)

p[i]=&a[i*4];

pp=p;

则对数组元素的错误引用是

A.pp[0][1]

B.a[10]

C.p[3][1]

D.*(*(p+2)+2)


正确答案:C
解析:考查指向数组的指针。本题综合考查一维数组和多维数组指针变量的表示方法。在C语言中,引用数组元素的方法有两种,即下标法和指针法。下标法如a[i]形式;指针法如*(a+i)或*(p+1)。其中,a是数组名,p是指向数组的指针变量,其初值p=a。再如*(*(p+2)+2)是a[2][2]的值,注意语句中指针型数组的书写格式,不能写成"(*数组名)[长度]",因为这是定义指向含有"长度"个元素的一维数组的指针变量。例如有定义语句"int a,b,c,c,*p[3]={&a,&b,&c};",它定义了一个名为p的指针型数组,其3个元素p[0],p[1],p[2]分别指向f3个整型变量a,b,c。

第7题:

若有定义:inta[5]={3,5,4,6,8},*p=a;则引用数组元素错误的是()。

A.a[3]

B.*(a+1)

C.&a[2]

D.p[2]


正确答案:C

第8题:

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

A.p+5

B.*a+1

C.&a+1

D.&a[0]


正确答案:D

第9题:

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

第10题:

若有以下定义和语句,则对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则指向了第二行的第二个数据元素,其他几个选项都不正确。