若有定义:int w[3][5];则以下不能正确表示该数组元素的表达式是(  )。

题目
单选题
若有定义:int w[3][5];则以下不能正确表示该数组元素的表达式是(  )。
A

*(w+1)[4]

B

*(*w+3)

C

*(*(w+1))

D

*(&w[0][0]+1)

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

第1题:

若有以下定义:int t[3][2];能正确表示t数组元素地址的表达式是( )。A)&t[3][2] B)t[3]C)t[1] D)*t[2]


正确答案:C
A项t[3][2]数组下标越界,B项同理,D项表示的为数组元素非地址

第2题:

若有定义:int w[3][5];,则以下不能正确表示该组元素的表达方式是______,

A.*(*w+3)

B.*(w+1)[4]

C.*(*(w+1))

D.*(&w[0][0]+1)


正确答案:B
解析:选项A:*(*w+3)=*(*(w+0)+3)=*(w[0]+3)=w[0][3],符合数组定义的范围可以正确表示数据元素。
     选项B:*(w+1)[4]=*(*(w+1)4=*w[5]=w[5][0],超出了数据定义的范围。
     选项C:*(*(w+1))=*w[1]=w[1][0],符合数组定义的范围可以正确表示数据元素。
     选项D:*(&w[0][0]+1);=*(w[0]+1)w[0][1],符合数组定义的范围可以正确表示数据元素。

第3题:

若有定义: int w[3][5]; ,则以下不能正确表示该数组元素的表达式是

A)*(*w+3)

B)*(w+1)[4]

C)*(*(w+1))

D)*(&w[0][0]+1)


正确答案:C

答案C
解析:在 C 语言中,二维数组的名字表示的是二维数组的地址,表达式 * ( w+1 )表示的是二维数组的第 1 行的第 2 元素。在其前面再加上 * ( * ( w+1 ) )就是错误的表达式。

第4题:

若有以下定义:int t[3][2];,能正确表示t数组元素地址的表达式是______。

A.&t[3][2]

B.t[3]

C.t[1]

D.*t[2]


正确答案:C
解析:A和B两个表达式都已越界了;*t[2]是目标变量,即一个整数,而不是地址值。

第5题:

若有以下定义和语句:int a[10]={1,2,3,4,5,6,7,8,9,10},*ia=a;则不能正确表示a数组元素的表达式是 ______。

A.*ia

B.a[10]

C.*a

D.a[ia-a]


正确答案:B

第6题:

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

第7题:

若有定义“int*p[3];”,则以下叙述中正确的是( )。

A.定义了一个基类型为int的指针变量p,该变量具有3个指针

B.定义了一个指针数组p,该数组含有3个元素,每个元素都是基类型为int的指针

C.定义了一个名为*p的整型数组,该数组含有3个int类型元素

D.定义了一个可指向一维数组的指针变量p,所指一维数组应具有3个int类型元素


正确答案:B
解析:本题定义了一个指针数组p,每个元素都是基类型为int,它的长度为3即该数组含有3个元素。选项A、C和D都不正确,只有选项B符合题意。

第8题:

设有定义:inta=2,b=3,c=4;,则以下选项中值为0的表达式是A、(!a==1),则以下叙述中正确的是()

A、定义了一个基类型为int的指针变量p,该变量具有三个指针

B、定义了一个指针数组p,该数组含有三个元素,每个元素都是基类型为int的指针

C、定义了一个名为*p的整型数组,该数组含有三个int类型元素

D、定义了一个可指向一维数组的指针变量p,所指一维数组应具有三个int类型元素


参考答案:B

第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题:

若有定义:int *p[3];则以下叙述中正确的是( )。

A.定义了一个基类型为int的指针变量p,该变量具有三个指针

B.定义了一个指针数组p,该数组含有三个元素,每个元素都是基类型为int的指针

C.定义了一个名为*p的整型数组,该数组含有三个int类型元素

D.定义了一个可指向一维数组的指针变量p,所指一维数组应具有三个int类型元素


正确答案:B
解析:当一个数组中的元素均为指针类型数据时,该数组就称为指针数组。int*p[3]表示此数组是指针类型的,每个数组元素(指针变量)都是指向一个整型的指针变量。