mport java.util.Arrays;
import java.util.Scanner;
public class test4 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int Array[][] = new int[3][3];
System.out.println("请输入矩阵中的3*3个元素值:");
for (int i = 0; i < 3; i++) {
for (int j = 0; j < 3; j++) {
Array[i][j] = sc.nextInt();
}
}
System.out.println("你输入的3*3的矩阵如下:");
for (int i = 0; i < 3; i++) {
for (int j = 0; j < 3; j++) {
System.out.print(Array[i][j] + " ");
}
System.out.println();
}
System.out.println();
// 求对角线元素之和:
int sum = 0;// 求主对角线之和
int sum2 = 0;// 求副对角线之和
int sum_All = 0;// 求两条对角线的总和 因为主对角线与次对象中有一个重叠的元素,题目没有讲清,所以忽略其中一个;
int sum_All2 = 0; // 求对角线总和
System.out.print("对角线的值有:");
// 求主次对角线之和
for (int i = 0; i < Array.length; i++) {
for (int j = 0; j < Array[i].length; j++) {
// 两个对角线之和
if (Array[i].length - i - 1 == j || i == j) {
sum_All += Array[i][j];
System.out.print(Array[i][j] + " ");
}
}
}
// 求主对角线之和:
for (int i = 0; i < 3; i++) {
sum += Array[i][i];
sum2 += Array[i][2 - i];
}
sum_All2 = sum + sum2;
System.out.println();
System.out.println("主对角线之和为:" + sum);
System.out.println("副对角线之和为:" + sum);
System.out.println("两条对角线之和:" + sum_All2);
System.out.println("两条对角线之和(忽略重叠值):" + sum_All);
// 转置输出:
int temp = 0;
for (int i = 0; i < Array.length; i++) {
for (int j = 0; j < Array.length; j++) {
temp = Array[i][j];
Array[i][j] = Array[j][i];
Array[j][i] = temp;
}
}
System.out.println();
System.out.println("转置后如下:");
for (int i = 0; i < Array.length; i++) {
for (int j = 0; j < Array.length; j++) {
System.out.print(Array[j][i] + " ");
}
System.out.println();
}
}
}
运行图: