
指导师老郭为您分享以下优质知识
在Java中查找最高成绩的方法主要有以下两种:
一、使用数组排序法
通过`Scanner`读取所有成绩并存入数组。
使用`Arrays.sort()`方法对数组进行升序排序。
排序后数组最后一个元素即为最高分。
示例代码:
```java
import java.util.Arrays;
import java.util.Scanner;
public class MaxScore {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("请输入成绩数量: ");
int n = scanner.nextInt();
double[] scores = new double[n];
System.out.println("依次输入成绩:");
for (int i = 0; i < n; i++) {
scores[i] = scanner.nextDouble();
}
Arrays.sort(scores);
System.out.println("最高分: " + scores[scores.length - 1]);
scanner.close();
}
}
```
二、使用循环遍历法
通过`Scanner`逐个读取成绩并存储。
使用`if`语句或三元运算符实时更新最高分。
示例代码:
```java
import java.util.Scanner;
public class MaxScore {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("请输入成绩数量: ");
int n = scanner.nextInt();
int[] scores = new int[n];
int maxScore = Integer.MIN_VALUE;
System.out.println("依次输入成绩:");
for (int i = 0; i < n; i++) {
scores[i] = scanner.nextInt();
if (scores[i] >
maxScore) {
maxScore = scores[i];
}
}
System.out.println("最高分: " + maxScore);
scanner.close();
}
}
```
总结
排序法适合成绩数量较少且需要完整排序的场景,时间复杂度为O(n log n)。
遍历法效率更高(时间复杂度为O(n)),适合成绩数量较大或仅需最高分的场景。
根据实际需求选择合适的方法即可。