请问代码有什么需要优化吗?
来源:1-8 编程练习
慕少6083615
2022-01-19 10:15:20
import java.util.Scanner; public class ScoreDemo{ public static void main(String[] args){ //定义一个三行两列的整型二维数组intArray int[][] intArray=new int[3][2]; //从键盘输入学生成绩,要求输入顺序与效果图一致 Scanner sc=new Scanner(System.in); for(int i=0;i<intArray.length;i++){ for(int j=0;j<intArray[i].length;j++){ if(j%2==0) { System.out.println("请输入第"+(i+1)+"个学生的语文成绩:"); intArray[i][j]=sc.nextInt(); }else { System.out.println("请输出第"+(i+1)+"个学生的数学成绩:"); intArray[i][j]=sc.nextInt(); } } } //求语文的总成绩和平均分 int sumChinese=0; for(int i=0;i<intArray.length;i++) { sumChinese+=intArray[i][0]; } int averageChinese=sumChinese/intArray.length; System.out.println("语文的总成绩为:"+sumChinese); System.out.println("语文的平均分为:"+averageChinese); //求数学的总成绩和平均分 int sumMath=0; for(int i=0;i<intArray.length;i++) { sumMath+=intArray[i][1]; } int averageMath=sumMath/intArray.length; System.out.println("数学的总成绩为:"+sumMath); System.out.println("数学的平均分为:"+averageMath); } }
1回答
同学你好~
1.可以在对数组进行赋值的时候直接对成绩的总和进行计算,而不必单独再循环遍历数组。
2.存储平均成绩的变量应当声明为浮点数并且在计算除法时,将任意一变量强制转换为浮点数,这样可以避免出现小数时的数据不精确问题。
修改之后的代码如下图所示:
祝学习愉快~
相似问题