求一个n阶方阵对角线元素之和
import java.util.Scanner;
public class diagonalsum {
public static void main(String[] args) {
System.out.println("请输入矩阵的阶数:");
Scanner in = new Scanner(System.in);
int i=in.nextInt();
int sum=0;
int[][] n=new int[i][i];
System.out.println(n.length+""+n[0].length);
System.out.println("请输入"+i*i+"个数 按回车结束:");
for(int j=0;j<i;j++)
for(int k=0;k<i;k++)
n[j][k]=in.nextInt();
System.out.println("输入的矩阵为:");
for(int j=0;j<i;j++){
for(int k=0;k<i;k++)
System.out.print(n[j][k]+" ");
System.out.println();
}
for(int j=0;j<i;j++){
System.out.println(j+" "+(i-j-1));
sum+=n[j][j]+n[j][i-j-1];
}
if(i%2==1){
sum-=n[i/2][i/2];
}
System.out.println(sum);
}
}
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
编译运行结果:
[bcahlit@bchalit Java]$ javac diagonalsum.java
[bcahlit@bchalit Java]$ java diagonalsum
请输入矩阵的阶数:
3
33
请输入9个数 按回车结束:
1 2 3 4 5 6 7 8 9
输入的矩阵为:
1 2 3
4 5 6
7 8 9
0 2
1 1
2 0
25
[bcahlit@bchalit Java]$