Java 需要帮助计算输入的每个字母等级的百分比吗 public类评分百分比{ 静态最终整数阈值=4; 公共静态void main(字符串[]args) { //创建扫描仪 扫描仪输入=新扫描仪(System.in); // System.out.print(“输入课程数:”); int n=input.nextInt(); 系统输出打印(“输入“+n+”分数:”); int[][]学生=新int[3][n+阈值]; 对于(int i=0;i

Java 需要帮助计算输入的每个字母等级的百分比吗 public类评分百分比{ 静态最终整数阈值=4; 公共静态void main(字符串[]args) { //创建扫描仪 扫描仪输入=新扫描仪(System.in); // System.out.print(“输入课程数:”); int n=input.nextInt(); 系统输出打印(“输入“+n+”分数:”); int[][]学生=新int[3][n+阈值]; 对于(int i=0;i,java,arrays,Java,Arrays,我试图计算每个字母的分数输入了多少,但是每次我运行程序时,它都表明我输入了所有的“A”字母分数。该程序应能够输入每门课程的#课程分数,并显示每个字母分数的输入数量以及最终的分数百分比 仔细查看您的90

我试图计算每个字母的分数输入了多少,但是每次我运行程序时,它都表明我输入了所有的“A”字母分数。该程序应能够输入每门课程的#课程分数,并显示每个字母分数的输入数量以及最终的分数百分比

仔细查看您的
90
状况。您确定这里有
|
操作符吗?你们真的想要由你们的条件或者交集创建的集合的总和吗?如果x是90,应该怎么办?如果
应该由哪个
来处理?既然你已经在
getStudentGrade
中分配了字母等级,为什么不在
countLetters
中使用呢?非常感谢,我已经修复了方法中的错误,并添加了=。请仔细查看你的
90
条件。您确定这里有
|
操作符吗?你们真的想要由你们的条件或者交集创建的集合的总和吗?如果x是90,应该怎么办?如果
应该由哪个
来处理?既然你已经在
getStudentGrade
中分配了字母等级,为什么不在
countLetters
中使用它呢?非常感谢你,我已经修复了该方法中的错误,并添加了=。
public class GradePercent {

    static final int THRESHOLD = 4;

    public static void main(String[] args) 
    {
        //Create Scanner 
        Scanner input = new Scanner(System.in);

        //
        System.out.print("Enter the number of courses: ");
        int n = input.nextInt();
        System.out.print("Enter " + n + " scores: ");

        int[][] students = new int[3][n + THRESHOLD];

        for (int i = 0; i < n; i++)
        {
            students[0][i] = input.nextInt();
        }

        int bestScore = getBestScore(students);
        setGradeRange(students, bestScore);


        for (int i = 0; i < students[0].length - THRESHOLD; i++) {
            char grade = getStudentGrade(students, i);
            System.out.println("Grade " + i + " score is " + students[0][i] + " and grade is " + grade);
        }

        countLetters(students);
        System.out.println("Total grades: " + n );
    }

    public static char getStudentGrade(int[][] students, int index) 
    {
        int grade = students[0][index];
        for (int i = 0; i < 4; i++) 
        {
            if (grade >= students[1][i]) 
            {
                return (char) students[2][i];
            }
        }
        return 'F';
    }    

    public static void setGradeRange(int[][] students, int bestScore)
    {
        for (int i = 0; i < 4; i++) 
        {
            students[1][i] = bestScore - (10 * (i + 1));
            students[2][i] = ('A' + i);
        }
    }

    public static int getBestScore(int[][] students) 
    {
        int bestScore = 100;
        return bestScore;
    }

    public static void countLetters(int[][] students) 
    {
        int As = 0, Bs = 0, Cs = 0, Ds = 0, Fs = 0; 
        for (int i = 0; i < students [0][i]; i++){
        if ( 90 < students [0][i] || students [0][i] < 100 )
            As++;
        else if (80 < students [0][i] || students [0][i]  < 89 )
            Bs++;
        else if (70 < students[0][i] || students [0][i] < 79)
            Cs++;
        else if (60 < students [0][i]|| students [0][i] < 69 )
            Ds++;
        else if (students [0][i] < 60 )
            Fs++;
        }
        System.out.println("There are " + As + " A"  );
        System.out.println("There are " + Bs + " B" );
        System.out.println("There are " + Cs + " C" );
        System.out.println("There are " + Ds + " D" );
        System.out.println("There are " + Fs + " F" );
    }
}