1.定义一个20*5的二维数组,用来存储某班级20位学员的5门课的成绩;这5门课
按存储顺序依次为:core C++,coreJava,Servlet,JSP和EJB。
(1)循环给二维数组的每一个元素赋0~100之间的随机整数。
(2)按照列表的方式输出这些学员的每门课程的成绩。
(3)要求编写程序求每个学员的总分,将其保留在另外一个一维数组中。
(4)要求编写程序求所有学员的某门课程的平均分。
代码如下:
import java.util.Random;
public class Demo04学生数组 {
public static void main(String[] args) {
Random rd = new Random();
int[][] stu=new int[20][5];
int[] sum=new int[20];
int[] ave=new int[5];
int a =0;
System.out.println("学号"+"\t"+"core C++"+"\t"+"coreJava"
+"\t"+"Servlet"+"\t\t"+"JSP"+"\t\t"+"EJB"+"\t\t"+"总成绩"); //输出课程目录
for (int i = 0; i < stu.length; i++) {
System.out.print(i+1+"\t"); //输出学号
for (int j = 0; j < stu[i].length; j++) {
stu[i][j]=rd.nextInt(50)+50; // 随机赋值 +50保证了成绩不至于太低
System.out.print(stu[i][j]+"\t\t");
sum[i]+=stu[i][j]; //求和;求一个学生的总成绩
ave[j]+=stu[i][j]; //求单科成绩的全班同学的总分
}
a+=sum[i];
System.out.print(" ");
System.out.println(sum[i]);
}
System.out.print("平均分"+"\t");
for (int i = 0; i < ave.length; i++) {
System.out.print(ave[i]/20+"\t\t");
}
System.out.print(a/20.0);
}
}
运行结果如图: