java定义一个20*5的二维数组,用来存储某班级20位学员的5门课的成绩

本文介绍了一个简单的学生成绩管理系统,该系统使用Java实现,能够为20名学员的五门课程(coreC++, coreJava, Servlet, JSP 和 EJB)生成随机成绩,并计算每位学员的总成绩及各科平均分。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

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);
	}
}
运行结果如图:



在编程中,你可以使用数组存储班级学员信息,包括姓名和成绩。首先,你需要创建一个二维数组,其中一维表示每个学员的信息,包含两个元素:一个用于存储姓名,另一个用于存储成绩。 以下是一个简单的步骤说明: 1. 定义数组结构:假设每个学员占两,例如 `students[][]`,其中第一学员姓名,第二成绩。 ```java String[] names = new String[numOfStudents]; int[] scores = new int[numOfStudents]; ``` 这里 `numOfStudents` 是班级学员的数量。 2. 循环录入数据:通过嵌套循环,分别读取学员姓名和成绩,并存入对应置的数组。 ```java for (int i = 0; i < numOfStudents; i++) { System.out.println("请输入第 " + (i+1) + " 名学员的姓名:"); names[i] = input.nextLine(); System.out.println("请输入第 " + (i+1) + " 名学员成绩:"); scores[i] = Integer.parseInt(input.nextLine()); } ``` 3. 计算总分、平均分、最高分和最低分:遍历数组完成统计。 ```java int totalScore = 0; double averageScore = 0; int maxScore = scores[0]; int minScore = scores[0]; for (int score : scores) { totalScore += score; if (score > maxScore) { maxScore = score; } if (score < minScore) { minScore = score; } } averageScore = (double) totalScore / scores.length; ``` 4. 输出结果: ```java System.out.println("班级学员总分为:" + totalScore); System.out.println("班级学员平均分为:" + averageScore); System.out.println("班级学员最高分为:" + maxScore); System.out.println("班级学员最低分为:" + minScore); ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值