指针简单引用
#include <stdio.h>
#include <stdlib.h>
#define N 5
int main()
{
int i,temp;
int array[N];
int *p;
p=array;
for(i=0;i<N;i++)
{
scanf("%d",&array[i]);
}
for(i=0;i<=N/2;i=i+1)//完成交换
{
temp=array[i];
array[i]=array[N-i];
array[N-i]=temp;
}
for(p=array;p<array+N;p=p+1)//顺序输出
{
printf("%d",*p);
}
system("PAUSE");
return 0;
}
为什么 我输入1 2 3 4 5 输出的是 0 5 4 3 2
[解决办法]
这样就可以了
#include <stdio.h>
#include <stdlib.h>
#define N 5
int main()
{
int i,temp;
int array[N];
int *p;
p=array;
for(i=0;i<N;i++)
{
scanf("%d",&array[i]);
}
for(i=0;i<=N/2;i=i+1)//完成交换
{
temp=array[i];
array[i]=array[N-i-1];
array[N-i-1]=temp;
}
for(p=array;p<array+N;p=p+1)//顺序输出
{
printf("%d ",*p);
}
system("PAUSE");
return 0;
}
[解决办法]
++
发现下标从0开始的size-1结束这点很多犯错的,哎,为啥C语言的下标不从1开始呢,苦了这么多孩纸...