数组a双数位置的内容是什么?来看看这个题

数组a偶数位置的内容是什么?来看看这个题
数组a偶数位置的内容是什么(a[0]为奇数位置)

C/C++ code

#define N 12
int a[N]={8,0,7,4,6,1,5,2,100,3,400,9};
int *p=&a[0],*q=&a[N-1],temp;

while(p<q)
{
   temp=*p;
   *p++=*q;
   *q--=temp;
}



结果是多少?帮我讲一下,这个题不是很懂。谢谢!

------解决方案--------------------
就是把数组逆序吧
------解决方案--------------------
数组逆序,你的循环等价于

C/C++ code

while(p<q)
{
   temp=*p;
   *p=*q;
   *q=temp;
   ++p;
   --q;
}

------解决方案--------------------
没看懂LZ是什么意思,这就是一个把数组中所有的数字逆向排列的程序。
先让p指向a[0],q指向a[N-1],然后交换p、q指向的值,接着p向右移动,q向左移动,直到p指向的地址大于q指向的地址为止
------解决方案--------------------
P指针往后移,Q指针往前,交换*p,*q 当P>=Q就退出循环 你debug你更能看清楚么
------解决方案--------------------
p从左往右移,q从右往左移,移到中间的位置即表明元素已经交换完毕,注意数组的地址为连续的这个事实。

探讨

while(p<q)是什么意思?
引用:
数组a偶数位置的内容是什么(a[0]为奇数位置)

C/C++ code

#define N 12
int a[N]={8,0,7,4,6,1,5,2,100,3,400,9};
int *p=&amp;amp;a[0],*q=&amp;amp;a[N-1],temp;

while(p<q)
{
temp=*p;……

------解决方案--------------------
这个应该是把数组内容逆置