题目:编程实现输出显示10个同学的三门课程,每门课程的最高分、最低分、平均分。
/**
* @author Cat00011cat
* @deprecated 二维数组实现 存储学生学号对应的三门课程成绩,并计算最高分、最低分和平均分;最后格式化输出成绩表及成绩汇总计算结果.
*/
class five {
public static void corse() {
int[] xuehao = new int[10]; // 实例化学号数组
Random random = new Random(); // 实例化随机数出生成对象
for (int i = 0; i < xuehao.length; i++) {
xuehao[i] = 202300 + i; // 自动生成10个学号从202300开始自增+1
}
int[][] chengji = new int[10][3]; // 创建10x3的二维数组存储学生的三门科目成绩 30
System.out.println("=================成绩表=================");
System.out.println("学号\t\t" + "语文\t\t" + "数学\t\t" + "英语\t\t");
// 为每个学生的三门科目生成随机成绩
for (int i = 0; i < chengji.length; i++) {
for (int j = 0; j < chengji[i].length; j++) {
chengji[i][j] = random.nextInt(100) + 1; //0-100的成绩
}
}
// 输出学号和成绩
for (int i = 0; i < xuehao.length; i++) {
System.out.print(xuehao[i] + "\t\t");
for (int j = 0; j < chengji[i].length; j++) {
System.out.print(chengji[i][j] + "\t\t\t");
}
System.out.println(""); // 换行
}
System.out.println("=================成绩汇总计算=================");
System.out.println("科目\t\t最高分\t\t最低分\t\t平均分");
// 计算每门科目的最高分、最低分和平均分
for (int j = 0; j < chengji[0].length; j++) {
String kechengming = "";
if (j == 0) {
kechengming = "语文";
} else if (j == 1) {
kechengming = "数学";
} else if (j == 2) {
kechengming = "英语";
}
// 给最大值 最小值 平均值 设置 初始值. 假设 0行j 为最大值
int maxChengji = chengji[0][j];
int minChengji = chengji[0][j];
int countSum = 0; //综合
// 循环判断最大值 最小值.
for (int i = 0; i < chengji.length; i++) {
int dankechengji = chengji[i][j];
countSum += dankechengji;
if (dankechengji > maxChengji) {
maxChengji = dankechengji;
}
if (dankechengji < minChengji) {
minChengji = dankechengji;
}
}
// 计算平均值
int pinjun = countSum / chengji.length;
System.out.println(kechengming + "\t\t" + maxChengji + "\t\t\t" + minChengji + "\t\t\t" + pinjun);
}
}
}
运行结果
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。