请老师帮忙修正
来源:1-8 编程练习
DanielZyz
2020-03-14 18:01:45
package com.imooc;
import java.util.Scanner;
public class 二维数组的学生成绩 {
public static void main(String[] args) {
int[][] Array=new int[2][3];
int sum1=0,sum2=0;
for(int s=0;s<Array.length;s++){
for(int i=1;i<4;i++){
System.out.println("请输入第"+i+"个学生的语文成绩:");
Scanner sc=new Scanner(System.in);
sum1=sc.nextInt();
Array[0][s]=sum1;
sum1=sum1+sum1;
System.out.println("请输入第"+i+"个学生的数学成绩:");
Scanner sc2=new Scanner(System.in);
sum2=sc2.nextInt();
Array[1][s]=sum2;
}
System.out.println("语文的总成绩为:"+sum1);
System.out.println("语文的平均成绩为:"+sum1/3);
System.out.println("数学的总成绩为:"+sum2);
System.out.println("数学的平均成绩为:"+sum2/3);break;
}
}
}
1回答
同学你好,同学的代码运行的结果是错误的,下面老师来说明问题并给出解答。
计算语文和数学成绩总和时有误,学生代码如下:

同学可以看到,sum1=sum1+sum1;并不是求和的语句,并且在上述代码中,同学也没有用到二维数组。正确的代码应为:

更改后,同学的代码就能正确的输出了。
老师把改后的代码发给同学,同学认真更改错误,加油~
public static void main(String[] args) {
int[][] Array=new int[2][3];
int sum1 = 0,sum2 = 0;
for(int s = 0;s < Array.length ; s ++){
for(int i = 1;i < 4;i ++){
System.out.println("请输入第"+i+"个学生的语文成绩:");
Scanner sc=new Scanner(System.in);
Array[0][s] = sc.nextInt();
sum1 += Array[0][s];
System.out.println("请输入第"+i+"个学生的数学成绩:");
Scanner sc2 = new Scanner(System.in);
Array[1][s] = sc2.nextInt();
sum2 += Array[1][s];
}
System.out.println("语文的总成绩为:"+sum1);
System.out.println("语文的平均成绩为:"+sum1/3);
System.out.println("数学的总成绩为:"+sum2);
System.out.println("数学的平均成绩为:"+sum2/3);
break;
}
}如果我的回答解决了你的疑惑,请采纳,祝学习愉快~
相似问题