可以使用2个指针,分别指向开头和结尾,头指针指向偶数,尾指针指向奇数,然后交换。直到2个指针挨着。
程序如下:#include
void swap(int *p1, int *p2)
{
int p;
p = *p1;
*p1 = *p2;
*p2 = p;
}
int main()
(
int arr[10];
int N = 0;
printf("Please input the length of array : \n");
scanf("%d", &N);
int *z = (int *)malloc(N*sizeof(int));
for (int i = 0; i
{
scanf("%d", &z[i]);
}
int *pHead = z;
int *pTail = &z[N-1];
while (pHead
{
while (pHead
{
pHead++;
}
while (pHead
{
pTail--;
}
if (pHead
{
swap(pHead, pTail);
}
}
for (int i = 0; i
{
printf("%d ", z[i]);
}
printf("\n");
return 0;
)
结果如下: