20班学生的Java期末成绩统计为65,89, 99, 89,68, 78, 58,59,43, 97,96,95, 84, 83, 82,75,91,71, 84, 82,67, 92,95,99,77,83, 65。
成绩分段:
优秀:分数>=90
良好: 90>分数>=80
中等: 80 >分数>=70
及格: 70>分数>=60
不及格:分数< 60
要求:请利用Array类的排序、检索、复制方法将成绩中的优秀,良好,中等,及格和不及格的人数分别统计出来并输出,同时将5个等级的成绩分别复制保存到5个数组,并分别将5个等级的成绩输出。
public static void main(String[] args) {
int[] scoreArray = {65, 89, 99, 89, 68, 78, 58, 59, 43, 97, 96, 95, 84, 83,
82, 75, 91, 71, 84, 82, 67, 92, 95, 99, 77, 83, 65};
Arrays.sort(scoreArray);
int greate = (-1) * Arrays.binarySearch(scoreArray, 90);
int[] greateMan = Arrays.copyOfRange(scoreArray, greate - 1, scoreArray.length );
int good = (-1) * Arrays.binarySearch(scoreArray, 80);
int[] goodMan = Arrays.copyOfRange(scoreArray, good - 1, greate - 1);
int mid = (-1) * Arrays.binarySearch(scoreArray, 70);
int[] midMan = Arrays.copyOfRange(scoreArray, mid - 1, good - 1);
int pass = (-1) * Arrays.binarySearch(scoreArray, 60);
int[] passMan = Arrays.copyOfRange(scoreArray, pass - 1, mid - 1);
int[] noPass = Arrays.copyOfRange(scoreArray, 0, pass - 1);
System.out.println("优秀的人");
for (int i : greateMan) {
System.out.print(i + " ");
}
System.out.println("\n良好的人");
for (int i : goodMan) {
System.out.print(i + " ");
}
System.out.println("\n中等的人");
for (int i : midMan) {
System.out.print(i + " ");
}
System.out.println("\n及格的人");
for (int i : passMan) {
System.out.print(i + " ");
}
System.out.println("\n不及格的人");
for (int i : noPass) {
System.out.print(i + " ");
}
}
```java
int[] arr = new int[] { 65, 89, 99, 89, 68, 78, 58, 59, 43, 97, 96, 95, 84, 83, 82, 75, 91, 71, 84, 82, 67, 92,
95, 99, 77, 83, 65 };
Arrays.sort(arr);
int[] youxiu = new int[10];
int[] lianghao = new int[10];
int[] zhongdeng = new int[10];
int[] jige = new int[10];
int[] bujige = new int[10];
int[] num = new int[4];
for (int i = 0, j = 0, score = 60; i < arr.length; i++) {
if (arr[i] >= score) {
num[j] = i;
score += 10;
j++;
}
}
youxiu = Arrays.copyOfRange(arr, num[3], arr.length);
lianghao = Arrays.copyOfRange(arr, num[2], num[3]);
zhongdeng = Arrays.copyOfRange(arr, num[1], num[2]);
jige = Arrays.copyOfRange(arr, num[0], num[1]);
bujige = Arrays.copyOfRange(arr, 0, num[0]);
System.out.print("优秀" + youxiu.length + "个:");
show(youxiu);
System.out.print("良好" + lianghao.length + "个:");
show(lianghao);
System.out.print("中等" + zhongdeng.length + "个:");
show(zhongdeng);
System.out.print("及格" + jige.length + "个:");
show(jige);
System.out.print("不及格" + bujige.length + "个:");
show(bujige);
```