CMS专题

单选题设有以下语句,则()是对a数组元素的不正确引用,其中0<=i<10。 int a[10]={0,1,2,3,4,5,6,7,8,9},*p=a;A a[p-a]B *(&a[i])C p[i]D *(*(a+i))

题目
单选题
设有以下语句,则()是对a数组元素的不正确引用,其中0<=i<10。 int a[10]={0,1,2,3,4,5,6,7,8,9},*p=a;
A

a[p-a]

B

*(&a[i])

C

p[i]

D

*(*(a+i))

如果没有搜索结果,请直接 联系老师 获取答案。
如果没有搜索结果,请直接 联系老师 获取答案。
相似问题和答案

第1题:

若已定义:

int a[]={0,1,2,3,4,5,6,7,8,9},*P=a,i;

其中O≤i≤9,则对a数组元素不正确的引用是

A.a[p-a]

B.*( &a[i])

C.p[i]

D.a[10]


正确答案:D

第2题:

若已定义以下语句,其中0≤i≤9,则对a数组元素不正确的引用为______。 int a[]={0,1,2,3,4,5,6,7,8,9},*p=a,i;

A.a[p-a]

B.*(&a[i])

C.p[i]

D.a[10]


正确答案:D

第3题:

有以下语句,则对a数组元素的引用不正确的是(0≤i≤9)

int a[10]={0,1,2,3,4,5,6,7,8,9},*p=a;

A.a[p-a]

B.*(&a[i])

C.p[i]

D.*(*(a+i))


正确答案:D

第4题:

设有二维数组int a[10][20];,则a[i][j]的地址可由首元素a[0][0]的地址来表达,由此可得访问数组元素a[i][j]的表达式为【 】。


正确答案:*(&a[0][0]+20*4*i+4*j)
*(&a[0][0]+20*4*i+4*j) 解析:根据二维数组的定义,它的a[i][j]元素的地址应该是&a[0][0]+20*4*i+4*j,所以a[i][j]元素的值是*(&a[0][0]+20*4*i+4*j)。

第5题:

有以下语句,则对a数组元素的引用不正确的是(0≤i≤9) int a[10]={0,1,2,3,4,5,6,7,8,9},*p=a;

A.a[p=a)

B.*(&a[i])

C.p[i]

D.*(*(a+i)


正确答案:D
解析:选项D)第一层括号中为数组a中第i项元素的值,外面再加指针运算符没有意义。

第6题:

设有数组的定义int[] a = new int[3],则下面对数组元素的引用错误的是( )。

A.a[0];

B.a[A.length-1];

C.a[3];

D.int i=1; a[i];


参考答案:C

第7题:

设有以下语句,其中不是对a数组元素的正确引用的是:_____(其中0≤i<10) int a[10]={0,1,3,4,5,6,7,8,9,},*p=a;

A.a[p-a]

B.*(&a[i])

C.p[i]

D.*(*(a+i))


正确答案:D
解析:观察程序可知,a实际上就是数组a的首地址,所以“*(a+i)”表示的就是数组a中的第i个元素的值,进而,我们可以知道*(*(a+i))必然不是对a数组元素的正确引用。

第8题:

若已定义 int a[]={0,1,2,3,4,5,6,7,8,9},*p=a,i; 其中0≤i≤9,则对a数组元素不正确的引用是

A.a[p-A)

B.*(&a[i])

C.p[i]

D.a[10]


正确答案:D
解析: 通常,引用一个数组元素可以用下标法,如a[P-a]形式,或指针法,如*(&a[i])的形式。本题中a[9]=9,a[10]显然超出了数组范围,注意,数组的下标是从0开始的。

第9题:

若已定义:

int a[ ] ={0,1,2,3,4,5,6,7,8,9}, * p=a, i ; 其中0≤i≤9,则对a数组元素不正确的引用是

A.a[p-a]

B.* (&a[1] )

C.p[1 ]

D.a[10]


正确答案:D
解析:通常,引用一个数组元素可以用下标法,如a[p-a] 形式,或指针法,如 * (&a[i] ) 的形式。本题中a[9] =9,a[10] 显然超出了数组范围,注意,数组的下标是从0开始的。

第10题:

设有以下语句,则()是对a数组元素的不正确引用,其中0<=i<10。int a[10]={0,1,2,3,4,5,6,7,8,9},*p=a;

A.a[p-a]

B.*(&a[i])

C.p[i]

D.*(*(a+i))


参考答案:D

更多相关问题