|NO.Z.00088|——————————|BigDataEnd|——|Java&数组单元.V07|——|Java.v07|一维数组.v07|数字实现学生考试成绩录入打印|总分和平均分计算|
一、[数组实现学生考试成绩的录入和打印]——[总分和平均分计算]
### --- 数组实现学生考试成绩录入和打印
~~~ # 案例题目
~~~ ——> 提示用户输入学生的人数以及每个学生的考试成绩并打印出来。
~~~ ——> 计算该班级的总分和平均分并打印出来。
二、编程代码
### --- 编程代码
/*
编程使用数组来记录学生的考试成绩并打印
*/
import java.util.Scanner;
import java.util.Arrays;
public class ArrayScoreTest {
public static void main(String[] args) {
// 1.提示用户输入学生的人数并使用变量记录
System.out.println("请输入学生的人数:");
Scanner sc = new Scanner(System.in);
int num = sc.nextInt();
// 2.根据学生的人数来声明对应长度的数组负责记录学生的考试成绩
// 变长数组 : 主要指变量可以作为数组的长度,但绝不是数组的长度可以发生改变
int[] scores = new int[num];
// 3.提示用户输入每个学生的考试成绩并记录一维数组中
for(int i = 0; i < num; i++) {
System.out.println("请输入第" + (i+1) + "个学生的考试成绩:");
scores[i] = sc.nextInt();
}
// 4.打印所有学生的考试成绩
System.out.print("本班学生的考试成绩分别是:");
for(int i = 0; i < scores.length; i++) {
System.out.print(scores[i] + " ");
}
System.out.println();
System.out.println("----------------------------------------------");
// 5.计算本班级学生的总分以及平均分并使用变量记录
int sum = 0;
for(int i = 0; i < scores.length; i++) {
sum += scores[i];
}
double avg = sum*1.0 / num;
// 打印最终的计算结果
System.out.println("本班级学生的总分是:" + sum + ",平均分是:" + avg);
System.out.println("----------------------------------------------");
// 6.查找本班所有学生考试成绩中的最低分和最高分并打印出来
System.out.println("原始的考试成绩是:" + Arrays.toString(scores));
// 调用工具类中的排序方法对所有考试成绩进行从小到大的排序
Arrays.sort(scores);
System.out.println("排序后的考试成绩是:" + Arrays.toString(scores));
System.out.println("最低分是:" + scores[0] + ",最高分是:" + scores[num-1]);
System.out.println("----------------------------------------------");
// 从数组中查找指定元素所在的下标位置
System.out.println("59分在数组中的下标位置是:" + Arrays.binarySearch(scores, 59));
System.out.println("60分在数组中的下标位置是:" + Arrays.binarySearch(scores, 60));
}
}
三、打印输出
### --- 编译
C:\Users\Administrator\Desktop\project>javac ArrayScoreTest.java
### --- 打印输出
C:\Users\Administrator\Desktop\project>java ArrayScoreTest
请输入学生的人数:
5
请输入第1个学生的考试成绩:
100
请输入第2个学生的考试成绩:
99
请输入第3个学生的考试成绩:
66
请输入第4个学生的考试成绩:
55
请输入第5个学生的考试成绩:
33
本班学生的考试成绩分别是:100 99 66 55 33
----------------------------------------------
本班级学生的总分是:353,平均分是:70.6
----------------------------------------------
原始的考试成绩是:[100, 99, 66, 55, 33]
排序后的考试成绩是:[33, 55, 66, 99, 100]
最低分是:33,最高分是:100
----------------------------------------------
59分在数组中的下标位置是:-3
60分在数组中的下标位置是:-3
Walter Savage Landor:strove with none,for none was worth my strife.Nature I loved and, next to Nature, Art:I warm'd both hands before the fire of life.It sinks, and I am ready to depart
——W.S.Landor
分类:
bdv001-Java语言基础
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· DeepSeek 开源周回顾「GitHub 热点速览」