c语言的题 int a[3][4]={1,2,3,4,5,6,7,8,9,10,11,12};若数组a首地址为500,则a[1]+3的值为什么? 20
inta[3][4]={1,2,3,4,5,6,7,8,9,10,11,12};若数组a首地址为500,则a[1]+3的值为什么?此题答案是514,但是我不知道为什么,求...
int a[3][4]={1,2,3,4,5,6,7,8,9,10,11,12};若数组a首地址为500,则a[1]+3的值为什么?
此题答案是514,但是我不知道为什么,求解释!
此题答案是514,但是我不知道为什么,求解释! 展开
此题答案是514,但是我不知道为什么,求解释!
此题答案是514,但是我不知道为什么,求解释! 展开
1个回答
展开全部
答案A.
数组定义是a[0]=1,a[1]=2,a[2]=3, ...,a[9]=10
A. p += 2使p指向a[2], *(p++)表示先取*p的值, 然后p增加1(指向a[3]), 所以取得的值是a[2]=3
B. p += 2使p指向a[2], *++p表示先p增加1(指向a[3]),然后取*p的值,所以是a[3]=4
C. p += 3使p指向a[3], *p++表示先取*p的值, 然后p增加1(指向a[4]), 所以取得的值是a[3]=4
D. p += 2使p指向a[2], ++*p对*p的值增加1, 所以取得的值是a[2]=a[2]+1=4
还有一种写法是(*p)++, 表示先取*p的值, 这个值再增加1
数组定义是a[0]=1,a[1]=2,a[2]=3, ...,a[9]=10
A. p += 2使p指向a[2], *(p++)表示先取*p的值, 然后p增加1(指向a[3]), 所以取得的值是a[2]=3
B. p += 2使p指向a[2], *++p表示先p增加1(指向a[3]),然后取*p的值,所以是a[3]=4
C. p += 3使p指向a[3], *p++表示先取*p的值, 然后p增加1(指向a[4]), 所以取得的值是a[3]=4
D. p += 2使p指向a[2], ++*p对*p的值增加1, 所以取得的值是a[2]=a[2]+1=4
还有一种写法是(*p)++, 表示先取*p的值, 这个值再增加1
追问
我看不明白,p是什么,而且a是二维数组啊
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询