首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

指针简单引用解决办法

2012-05-28 
指针简单引用#include stdio.h#include stdlib.h#define N 5int main(){int i,tempint array[N]int

指针简单引用
#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开始呢,苦了这么多孩纸...

探讨
这样就可以了

#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",&amp;array[i]);
}
fo……

热点排行