新手求租,关于数组下标越界问题
从教材看的求马鞍点的例子,自己打了一边,运行时提示数组下标越界,怎么解决啊。。。高手帮着看一下
public class MyPoint
{
public static void main(String []args)
{
int a[][]={{1,2,3,4,5},{7,3,4,5,6},{2,1,5,4,3},{5,3,6,5,4}};
int maxa[][]=new int[4][5];
int mina[][]=new int[4][5];
int i,j,temp;
for(i=0;i<a.length;i++)
{
temp=a[i][0];
for(j=0;i<a[i].length;j++)
{
if(a[i][j]<temp)
{temp=a[i][j];}
}
for(j=0;j<a[i].length;j++)
{
if(a[i][j]==temp)
{mina[i][j]=1;}
}
}
for(j=0;j<a[0].length;j++)
{
temp=a[0][j];
for(i=0;i<a.length;i++)
{
if(a[i][i]>temp)
{temp=a[i][j];}
}
for(i=0;i<a.length;i++)
{
if(a[i][j]==temp)
{maxa[i][j]=1;}
}
}
for(i=0;i<a.length;i++)
{
for(j=0;j<a[i].length;j++)
{
System.out.print(" "+a[i][j]+" ");
System.out.println();
}
}
for(i=0;i<a.length;i++)
{
for(j=0;j<a[i].length;j++)
{
if(mina[i][j]+maxa[i][j]==2)
{
System.out.println(" "+i+"行"+j+"列是一个马鞍点值"+a[i][j]);
}
}
}
}
}