请问这个代码为什么不对呀
public class ScoreDemo{
public static void main(String[] args){
//定义一个三行两列的整型二维数组intArray
intArray=new int[3][2];
int sumyu=0,sumshu=0;
//从键盘输入学生成绩,要求输入顺序与效果图一致
Scanner sc=new Scanner(System.in);
for(int i=0;i<3;i++){
System.out.println("请输入第"+(i+1)+"个学生的语文成绩");
}
for(int j=0;j<2;j++){
System.out.println("请输入第"+(i+1)+"个学生的数学成绩");
}
//求语文的总成绩和平均分
sumyu=(intArray[0][0]+intArray[0][1]+intArray[0][2])/3;
sumshu=(intArray[1][0]+intArray[1][1]+intArray[1][2])/3;
System.out.println("语平"+sumyu);
System.out.println("数平"+sumshu);
//求数学的总成绩和平均分
}
}
正在回答 回答被采纳积分+1
思路有点小问题.下面可以参考
int[][] intArry = new int[3][2];
Scanner sc = new Scanner(System.in);
for(int x=0;x<3;x++){
for(int y=0;y<2;y++){
System.out.println("请输入第"+(x+1)+"个学生学成绩");
int sm = sc.nextInt();
intArry[x][y] = sm;
}
}
int sum = intArry[0][0]+intArry[1][0]+intArry[2][0];
System.out.println("语文成绩总数"+sum);
System.out.println("数学成绩"+(sum/3));
同学你好,代码的整体思路有些问题,另外,初始化二维数组的语法是不对的。
可以根据以下思路尝试完成:
1)首先定义一个三行两列的二维数组intArray。
2)定义两个变量sum1和sum2,初始值为0,分别用来存放语文和数学的成绩总和
3)使用循环完成,循环变量的值i小于intArray.length;
在循环中首先输出输入第X个学生的语文成绩的提示,然后把键盘输入的整数值赋值给intArray[i][0],接着累加到sum1。用同样的方法将数学成绩赋值给intArray[i][1],然后将数据累加到sum2
所以,也就是二维数组第一列存储语文成绩,第二列存储数学成绩
3)在循环外利用总和求平均值并输出。
同学可以尝试以上思路进行完善代码。
如果我的回答解决了你的疑惑,请采纳!祝学习愉快!
- 参与学习 人
- 提交作业 3802 份
- 解答问题 11489 个
本阶段带你迈入Java世界,学习Java必备基础知识,基础语法、面向对象思想以及常用工具类的使用。
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星