在java中编写一个程序,读取两个3乘3矩阵,找出它们的总和并显示结果?
我试过这个但是我得到了运行时错误
Scanner r=new Scanner(System.in);
int [][]array = null;
int[][]array2 = null;
int total=0;
System.out.println("Enter matrix");
for(int row=0;row<array.length;row++){
for(int col=0;col<array[row].length;col++){
array[row][col]=r.nextInt();
array[row][col]=r.nextInt()
System.out.print(" "+total +" ");
total=array[row][col]+array2[row][col];
System.out.println(" ");
答案 0 :(得分:2)
您没有为数组引用分配任何内存,它们没有引用任何内容(null)... 尝试:
int[][] array = new int[3][3];
int[][] array2 = new int[3][3];
另外,你在代码的第9行缺少一个分号。同样,在同一行中,我认为它应该是array2&amp;不是阵列。
答案 1 :(得分:0)
第一个FOR-Loop演示了如何在数组中输入值。此代码将要求用户同时输入两个数组的值。
第二个FOR-Loop演示了如何对每个数组的值求和。之后,两个阵列都被加在一起。
//Since you know the the array will be 3x3,
//declare it!
int[][] array1 = new int[3][3];
int[][] array2 = new int[3][3];
int array1Total = 0;
int array2Total = 0;
int endResult;
for (int x = 0; x < array1.length; x++) {
for (int y = 0; y < array1[x].length; y++) {
array1[x][y] = r.nextInt();
array2[x][y] = r.nextInt();
}
}
for (int x = 0; x < array1.length; x++) {
for (int y = 0; y < array1[x].length; y++) {
array1Total += array1[x][y];
array2Total += array2[x][y];
}
}
endResult = array1Total + array2Total;