指针6(指针与数组2)

增加一道例题
题目:应用指针,求一维数组a[10]={5,3,6,1,7,4,9,2,8,10} 中的最大值。
楼主的方法

#include<stdio.h>
int main()
{int a[10]={5,3,6,1,7,4,9,2,8,10},i,max;
 int *p;
 p=a;
 max=a[0];
 for(i=1;i<10;i++)
 {if(max<*(p+i))
  {max=*(p+i);
  }
 }
 printf("max=%d\n",max);	
return 0;
}

答案的方法

#include<stdio.h>
int main()
{int a[10]={5,3,6,1,7,4,9,2,8,10};
 int i,max,*p;
 p=a;
 max=*p;
 p++;
 for(i=1;i<10;i++,p++)
 {if(*p>max)  
 {max=*p;
 }
 }
 printf("\nmax=%d\n",max);
 return 0;
}

运行结果
max=10
其实本题的改进空间很大,只是初学指针为了练习,有兴趣的可以尝试完善程序。
下一篇 指针7(指针与二维数组)

猜你喜欢

转载自blog.csdn.net/weixin_43918004/article/details/84891308