JAVA随机产生一个5*5的矩阵(0-9之间),分别求出两条对角线及周边元素的和
1个回答

具体代码如下:

import java.math.*;

public class Test

{

private int[][] a = new int[5][5];

public void getA()

{

for (int i = 0; i < 5; i++)

{

for (int j = 0; j < 5; j++)

{

a[i][j] = (int)(Math.random() * 10);

}

}

}

public void getSum()

{

int zdj=0,fdj=0,zb=0;//分别是主对角 负对角 周边

getA();

for (int i = 0; i < 5; i++)

{

for (int j = 0; j < 5; j++)

{

System.out.printf ("%d ",a[i][j]);

if(i==0 || i==4)

{

zb += a[i][j];

}

else

{

if(j==0 || j==4)

{

zb += a[i][j];

}

}

if(j == i)

{

zdj += a[i][j];

}

if((i+j == 4))

{

fdj += a[i][j];

}

}

System.out.println ();

}

System.out.println ("主对角线的和:"+zdj);

System.out.println ("负对角线的和:"+fdj);

System.out.println ("周边之和:"+zb);

}

public static void main(String[] args)

{

Test t = new Test();

t.getSum();

}

}

运行结果如下:

0 3 4 8 7

8 9 7 5 6

1 1 8 5 5

3 5 5 1 7

8 7 2 4 5

主对角线的和:23

负对角线的和:33

周边之和:78