import java.util.Scanner;
public class Test5 {
public static void main(String[] args) {
// TODO Auto-generated method stub
int n=1;
Scanner input=new Scanner(System.in);//创建一个input的对象
n=input.nextInt();//调用input方法
int[][] a=new int[n][n];//输入n阶方阵
for(int i=0;i<n;i++)
{
for(int j=0;j<n;j++)
{
a[i][j]=input.nextInt();//输入n行n列的数
}
}
int sum1=0;//第一条对角线初始化为0
int sum2=0;//第二条对角线初始化为0
for(int i=0;i<n;i++)//i对于行
{
for(int j=0;j<n;j++)//j对于列
{
if(i==j) //第一条对角线满足行列行相等
{
sum1=sum1+a[i][j];
}
if(i+j==n-1)//第二条对角线满足行列之和等于n-1
{
sum2=sum2+a[i][j];
}
}
}
System.out.println("第一条对角线的和"+sum1+"\n"+"第二条对角线的和"+sum2);
}
}
分析:n阶方阵对角线元素满足的条件是第一条行列相等,第二条行列之和等于n-1.出现的错误是刚开始没有弄懂对角线元素满足的条件。
输出结果: