[求助]关于二维数组中,数据位置的输出
#include<stdio.h>
void main()
{
int a[20];
int i,max,min,x,y1,y2,p1,p2;
for(i=0;i<=20;i++)
{
printf("input data:");
scanf("%d",&a[i]);
}
max=a[0];
min=a[0];
for(x=1;x<=20;x++)
{
if(a[x]>max)
max=a[x];
else if(a[x]<min)
min=a[x];
}
for(y1=1;y1<=20;y1++)
{
if(a[y1]==max)
p1=y1+1;
break;
}
for(y2=1;y2<=20;y2++)
{
if(a[y2]==min)
p2=y2+1;
break;
}
printf("the max number is:%d,the locate is:%d\n",max,p1);
printf("the min number is:%d,the locate is:%d\n",min,p2);
}
最后出现p1,p2数据溢出且出现警告.
请高手帮忙