#include
int main()
{
//定义
int i,a[15],*p=a,*q,temp;
//初始化,输入15个数据
for(i=0;i<15;i++)
scanf("%d",p+i);
//把数组第15个元素的地址赋给q
q=&a[14];
//以第八个元素为对称点,最头部与最尾部交换
for(i=0;i<7;i++)
{
//头部与尾部交换
temp=*p;
*p=*q;
*q=temp;
//头部指针向后移一位,作为新的头部,尾部指针向前移动一位,作为新的尾部
p++;q--;
}
p=a;//由于下面要用p来对数组操作,所以把数组的头地址赋给p
//输出操作
for(i=0;i<15;i++)
printf("%3d",*(p+i));
return 0;
}
int i;
int a[15];
int *p=a;
int *q;
int temp;
//输入15个数据
for(i=0; i<15; i++)
scanf("%d",p+i);
q=&a[14]; //最后一个元素的地址赋值给q
for(i=0; i<7; i++)
{
//前面一半与后一半交换
temp=*p;
*p=*q;
*q=temp;
p++; //前面的指针向后移
q--; //后面的指针向前移
}
p=a; //将a的首地址赋值给p
for(i=0; i<15; i++)
printf("%3d",*(p+i));
#include
main()
{
int i,a[15],*p=a,*q,temp;
for(i=0;i<15;i++)
scanf("%d",p+i);//数组的输入
q=&a[14];
for(i=0;i<7;i++)
{
temp=*p;*p=*q;
*q=temp;p++;q--;//把a[0]的地址与a[14]的互换a[1]与a[13].......循环
}
p=a;//指针p指向数组的首地址
for(i=0;i<15;i++)
printf("%3d",*(p+i));//输出