这是啥意思?
来源:1-8 编程练习
DULULU
2020-08-15 14:59:01
public class ScoreDemo{
public static void main(String[] args){
//定义一个三行两列的整型二维数组intArray
int[][] inta=new int[3][2];
int n=1;
int a=0,b=1;
//从键盘输入学生成绩,要求输入顺序与效果图一致
for(int i=0;i<3;i++){
Scanner sc1=new Scanner(System.in);
System.out.println("请输入第"+n+"个学生的语文成绩");
inta[i][a]=sc1.nextInt();
Scanner sc2=new Scanner(System.in);
System.out.println("请输入第"+n+"个学生的数学成绩");
inta[i][b]=sc2.nextInt();
n++;
}
int sum1=0,sum2=0;
//求语文的总成绩和平均分
for(int i=0;i<=inta[0].length-1;i++){
sum1=sum1+inta[0][i];
}
System.out.println("语文成绩的总和"+sum1);
//求数学的总成绩和平均分
for(int i=0;i<=inta[1].length-1;i++){
sum2=sum2+inta[1][i];
}
System.out.println("数学成绩的总和"+sum2);
}
}
1回答
同学你好,同学的代码在求成绩总和时有点问题
同学的写法是遍历的第一行(inta[0])和第二行(inta[1])的长度减一,求和赋值的时候,将第1行第i个数值和赋值给了sum1,将第2行第i列的数值和赋给了sum2

遍历的时候应该遍历整个数组的长度,应该是遍历inta.length;
语文成绩是inta[i][0],数学是inta[i][1],所以求和的时候应该是将第i行第一列和第二列的成绩和赋值给sum1和sum2
修改后如下

如果同学不是对这段代码有疑问,请同学具体描述下,方便老师定位问题
祝学习愉快
相似问题