#include <stdio.h>
void change(int *num1)
{
int *m,*n,*p,i;
p=num1+4;//此用于指向中间位置数据,用于表示循环次数,4代表调换次数,总共10个数字,只需进行4次调换。
n=num1;//n用于表示开头
m=9+n;//m表示末尾,地址与数字只能进行加,不能减,因此再for循环中使用了m--弥补9-n。
for(;n<=p;n++,m--)
{
int tamp=*n;
*n=*m;
*m=tamp;
}
return;
}
int main()
{
int num[]={1,2,3,4,5,6,7,8,9,10};
change(num);
for(int i=0;i<10;i++)
{
printf("%d,",num[i]);
}
printf("\n");
} |