指针数组问题
用指针将一个整数数组的元素的值改为当前元素与相邻的下一个元素的乘积,最后1个改为第0个和最后1个元素的乘积;我写的程序:
#include"stdio.h"
void main()
{
int *p,a[3],i;
p=a;
for(i=0;i<3;i++)
scanf("%d",&a[i]);
*(p+2)=a[0]*a[2];
for(i=0;p<a+2;p++,i++)
*p=*(p)**(p+1);
for(i=0;i<3;i++)
printf("%d",a[i]);
}
如果输入2 3 4 正确结果为 6 12 8 我的为 6 24 8 我知道是
for(i=0;p<a+2;p++,i++) *p=*(p)**(p+1);有问题,可是不是有p++了 怎么相乘后*p的值又带到下一次里面去了