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

2022-03-29 13:14:38 浏览数 (3)

(指定等级)编写一个程序,读入学生成绩,获取最髙分best, 然后根据下面的规则陚等级值

• 如果分数>=best-10, 等级为A

• 如果分数>=best-20, 等级为B

• 如果分数>=best-30, 等级为C

• 如果分数>=卜68140, 等级为D

• 其他情况下,等级为F

程序提示用户输入学生总数,然后提示用户输入所有的分数,最后显示等级得出结论。下面

是一个运行示例:

(Assign grades) Write a program that reads student scores, gets the best score, and then assigns grades based on the following scheme:

Grade is A if score is >= best -5

Grade is B if score is >= best -10;

Grade is C if score is >= best -15;

Grade is D if score is >= best -20;

Grade is F otherwise.

The program prompts the user to enter the total number of students, and then prompts the user to enter all of the scores, and concludes by displaying the grades.

Here is a sample run:

代码语言:javascript复制
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

下面是参考答案代码:

代码语言:javascript复制
// 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]);
        }
    }
}

0 人点赞