在线客服
扫描二维码
下载博学谷APP
扫描二维码
关注博学谷微信公众号
在学习Java的过程中,最重要的就是多敲代码多练习,只有这样才巩固所学的基础理论知识。本文为大家提供了Java中一个十分经典的基础练习题——评委打分,并且附上了思路和答案,下面大家一起来做做吧~

1、案例需求
在编程竞赛中,有6个评委为参赛的选手打分,分数为0-100的整数分。选手的最后得分为:去掉一个最高分和一个最低分后 的4个评委平均值 (不考虑小数部分)。
2、代码实现
```java
/*
思路:
(1)定义一个数组,用动态初始化完成数组元素的初始化,长度为6
(2)键盘录入评委分数
(3)由于是6个评委打分,所以,接收评委分数的操作,用循环改进
(4)定义方法实现获取数组中的最高分(数组最大值),调用方法
(5)定义方法实现获取数组中的最低分(数组最小值) ,调用方法
(6)定义方法实现获取数组中的所有元素的和(数组元素求和) ,调用方法
(7)按照计算规则进行计算得到平均分
(8)输出平均分
*/
public class Test10 {
public static void main(String[] args) {
//定义一个数组,用动态初始化完成数组元素的初始化,长度为6
int[] arr = new int[6];
//键盘录入评委分数
Scanner sc = new Scanner(System.in);
//由于是6个评委打分,所以,接收评委分数的操作,用循环改进
for(int x=0; x<arr.length; x++) {
System.out.println("请输入第" + (x + 1) + "个评委的打分:");
arr[x] = sc.nextInt();
}
//printArray(arr);
//定义方法实现获取数组中的最高分(数组最大值),调用方法
int max = getMax(arr);
//定义方法实现获取数组中的最低分(数组最小值) ,调用方法
int min = getMin(arr);
//定义方法实现获取数组中的所有元素的和(数组元素求和) ,调用方法
int sum = getSum(arr);
//按照计算规则进行计算得到平均分
int avg = (sum - max - min) / (arr.length - 2);
//输出平均分
System.out.println("选手的最终得分是:" + avg);
}
/*
两个明确:
返回值类型:int
参数:int[] arr
*/
public static int getSum(int[] arr) {
int sum = 0;
for(int x=0; x<arr.length; x++) {
sum += arr[x];
}
return sum;
}
/*
两个明确:
返回值类型:int
参数:int[] arr
*/
public static int getMin(int[] arr) {
int min = arr[0];
for(int x=1; x<arr.length; x++) {
if(arr[x] < min) {
min = arr[x];
}
}
return min;
}
/*
两个明确:
返回值类型:int
参数:int[] arr
*/
public static int getMax(int[] arr) {
int max = arr[0];
for(int x=1; x<arr.length; x++) {
if(arr[x] > max) {
max = arr[x];
}
}
return max;
}
//遍历数组
public static void printArray(int[] arr) {
System.out.print("[");
for (int x = 0; x < arr.length; x++) {
if (x == arr.length - 1) {
System.out.print(arr[x]);
} else {
System.out.print(arr[x] + ", ");
}
}
System.out.println("]");
}
}
```
以上就是Java基础练习题评委打分的全部内容,大家都会做了吗?如果想要获得更多的Java基础练习,可以在博学谷官网咨询在线老师,获取学习资源!
— 申请免费试学名额 —
在职想转行提升,担心学不会?根据个人情况规划学习路线,闯关式自适应学习模式保证学习效果
讲师一对一辅导,在线答疑解惑,指导就业!
相关推荐 更多
JavaEE学习基础:如何学习spring
Spring是Java开发中常用的一个框架,不仅仅可以用于服务器端的开发。从简单性、可测试性以及松耦合性角度而言,绝大部分的Java应用都可以从spring中收益。这也是为什么Java开发程序员都比较喜欢使用spring的原因。
8668
2019-05-17 17:19:23
Java基础 字节流与字符流的区别是什么?
要把一片二进制数据数据逐一输出到某个设备中,或者从某个设 备中逐一读取一片二进制数据,不管输入输出设备是什么,我们 要用统一的方式来完成这些操作,用一种抽象的方式进行描述, 这个抽象描述方式起名为 IO 流,对应的抽象类为 OutputStream 和 InputStream ,不同的实现类就代表不同的输入和输出设备, 它们都是针对字节进行操作的。
9946
2019-06-03 11:19:03
程序员常用的JVM 配置参数汇总
JVM可以算是初级程序员进阶高级程序员必须要掌握的核心技能之一。另外,在许多面试过程中,JVM也是检验Java程序员能力水平的试金石。今天我们不谈Java底层实现的原理,而是为大家整理汇总了一些常见的,希望对大家编写代码有所帮助。
5567
2020-03-04 18:08:39
Java编程语言开发大数据的优势有哪些?
Java编程语言开发大数据的优势:Java语言支持各类组件、Java在物联网方面应用、Java移动领域应用、Java支撑超级计算机设备。GPU成为大多数速度最快的超级计算设备所不可或缺的处理器。Java“一次编写,随处起效”架构技术能够在工作站上开发自己的软件移植到系统当中。
5132
2020-03-30 17:55:17
”==“和 equals 方法究竟有什么区别?
”==“和 equals 方法究竟有什么区别?
4076
2021-07-05 15:36:05
