第七章第一题(指定等级)(Assign grades) – 编程练习题答案

(指定等级)编写一个程序,读入学生成绩,获取最髙分best, 然后根据下面的规则陚等级值
• 如果分数>=best-10, 等级为A
• 如果分数>=best-20, 等级为B
• 如果分数>=best-30, 等级为C
• 如果分数>=best-40, 等级为D
• 其他情况下,等级为F
程序提示用户输入学生总数,然后提示用户输入所有的分数,最后显示等级得出结论。下面
是一个运行示例:
Enter the number of students: 4
Enter 4 scores: 40 55 70 58
Student 0 score is 40 and grade is C
Student 1 score is 55 and grade is B
Student 2 score is 70 and grade is A
Student 3 score is 58 and grade is B
下面是参考答案代码:
// https://cn.fankuiba.com
import java.util.Arrays;
import java.util.Scanner;
public class Ans7_1_page235 {
public static void main(String[] args) {
String[] grade = {"A","B","C","D","F"};
Scanner input = new Scanner(System.in);
System.out.print("Enter the number of students: ");
int number = input.nextInt();
System.out.print("Enter " + number + " scores: ");
int[] score = new int[number];
for (int i = 0; i < number; i++)
score[i] = input.nextInt();
int[] scoreSort = new int[number];
System.arraycopy(score,0,scoreSort,0,score.length);
Arrays.sort(scoreSort);
int maxSort = scoreSort[number-1];
for (int i = 0; i < number; i++) {
if (score[i] >= maxSort-10)
System.out.println("Student " + i + " score is " + score[i] +
" and grade is " + grade[0]);
else if (score[i] >= maxSort-20)
System.out.println("Student " + i + " score is " + score[i] +
" and grade is " + grade[1]);
else if (score[i] >= maxSort-30)
System.out.println("Student " + i + " score is " + score[i] +
" and grade is " + grade[2]);
else if (score[i] >= maxSort-40)
System.out.println("Student " + i + " score is " + score[i] +
" and grade is " + grade[3]);
else
System.out.println("Student " + i + " score is " + score[i] +
" and grade is " + grade[4]);
}
}
}
适用Java语言程序设计与数据结构(基础篇)(原书第11版)Java语言程序设计(基础篇)(原书第10/11版)
发布在博客:(https://cn.fankuiba.com)
0 条评论