为什么这个一直是错的呢?
package com.imooc;
import java.util.Scanner;
public class Demo2 {
public static void main(String[] args){
//定义一个三行两列的整型二维数组intArray
int [][]intArray=new int[3][1];
int ysum=0,yavg=0,msum=0,mavg=0;
//从键盘输入学生成绩,要求输入顺序与效果图一致
Scanner sc=new Scanner(System.in);
for(int i=0;i<intArray.length;i++) {
System.out.println("请输入第"+(i+1)+"个学生的语文成绩:");
intArray[i][0]=sc.nextInt();
System.out.println("请输入第"+(i+1)+"个学生的数学成绩:");
intArray[i][1]=sc.nextInt();
ysum+=intArray[i][0];
msum+=intArray[i][1];
}
yavg=ysum/3;
mavg=msum/3;
//求语文的总成绩和平均分
System.out.println("语文的总成绩为:"+ysum);
System.out.println("语文的平均分为:"+yavg);
//求数学的总成绩和平均分
System.out.println("数学的总成绩为:"+msum);
System.out.println("数学的平均分为:"+mavg);
}
}用IDE编辑的时候,只能输入第一个学生的语文和数学成绩,到第二个就异常了,是怎么回事?

2
收起
正在回答
1回答
同学你好,报错信息是数组下标越界异常,这里定义的数组应该3行2列,如:

不是3行1列。建议同学修改一下再试试。
如果我的回答解决了你的疑惑,请采纳。祝:学习愉快~
Java零基础入门18
- 参与学习 人
- 提交作业 7317 份
- 解答问题 14452 个
想要入门学编程?多年一直活跃在编程语言排行版前列的Java是一个很好的选择。本路径将从Java基础语法、面向对象、常用工具类三部分,为你开启软件开发的大门!
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星