```c
#include<stdio.h>
int main()
{
int a[100],n,*p,*max;
scanf("%d",&n);
for(p=a;p<a+n;p++)//从键盘输入n个数
scanf("%d",p);
int i;
for(i=0;i<=n;i++)
{
if(a[i]>*max)
*max=a[i];
}
printf("max=%d\n",*max);
return 0;
}
```报出来结果不对
#include<stdio.h>
int main()
{
int a[100],n,*p,*max,i;
scanf("%d",&n);
for(p=a;p<a+n;p++)//从键盘输入n个数
scanf("%d",p);
max = &a[0]; //你的最大值没有初始化导致是个随机值
for(i=0;i<n;i++) //只有n个数下标到不了n 你<=就会溢出
{
if(a[i]>*max)
max=&a[i];
}
printf("max=%d\n",*max);
return 0;
}
修改后测试如下图