1设计思路:这个思路是请教同学得到的,首先创建一个二维数组,用随机函数随机产生一个二维数组。用了三层循环得到了结果。
2源码
package 数组;
import java.util.Random;
import java.util.Scanner;
public class shuzu4 {
public static void main(String[] args) {
int a[][];
int i,j,l,h,n,k,sum,max;
Scanner scanner = new Scanner(System.in);
System.out.print("输出随机产生的数组的长度:");
h=scanner.nextInt();
System.out.print("输出随机产生的数组的高度:");
l=scanner.nextInt();
scanner.close();
a=new int[l][h];
for(i=0;i<l;i++)
{
for(j=0;j<h;j++)
{
Random random = new Random();
a[i][j]=random.nextInt(11);
a[i][j]=a[i][j]-1;
System.out.print(a[i][j]);
System.out.print(" ");
}
System.out.println("");
}
max=0;
for(n=0;n<l;n++)
{
sum=0;
for(i=0;i<l-n;i++)
{
sum=0;
for(j=0;j<h;j++)
{
for(k=i;k<=i+n;k++)
{
sum=sum+a[k][j];
}
System.out.print(sum);
System.out.print(" ");
if(sum<0)
{
sum=0;
}
if(max<sum)
{
max=sum;
}
}
}
}
System.out.print(max);
System.out.println("");
}
}
