在本文中,我们将介绍如何使用Java编写一个简单的程序,用于输入学生的成绩并划分等级。这个程序可以实现以下功能:
- 输入学生人数。
- 输入每个学生的成绩。
- 计算最高分。
- 根据最高分划分成绩等级。
- 输出每个学生的分数和对应的等级。
首先,我们需要导入Scanner类来获取用户输入。然后,我们定义一个变量max来存储成绩的最大值。接下来,我们提示用户输入学生人数,并将其存储在变量num中。接着,我们创建一个整型数组arr来存储学生的成绩,以及一个字符数组grade来存储成绩的等级。
接下来,我们使用for循环遍历数组arr,通过Scanner获取用户输入的成绩,并将其存储在数组arr中。然后,我们再次遍历数组arr,找出最大值,并将其存储在变量max中。
有了最大值后,我们可以开始划分成绩等级。我们使用for循环遍历数组arr,并根据每个成绩与最大值的差距来划分等级。具体来说,如果成绩大于等于最大值减10,则等级为A;如果成绩大于等于最大值减20,则等级为B;如果成绩大于等于最大值减30,则等级为C;否则,等级为D。
最后,我们再次使用for循环遍历数组arr和grade,输出每个学生的分数和对应的等级。
import java.util.Scanner;
/**
* ClassName:IntelliJ IDEA
* Description:
*
* @Author zyjstart
* @Create:2024/8/22 15:04
*/
public class ArrayTest {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
// 定义一个变量存储成绩最大值
int max = 0;
// 输入学生人数
System.out.print("请输入学生人数:");
int num = sc.nextInt();
// 定义数组arr存放成绩,长度为学生人数num
int[] arr = new int[num];
// 定义数组存放成绩等级,长度为学生人数num
char[] grade = new char[num];
System.out.println("请输入" + num + "个成绩");
// 通过循环遍历数组,给学生数组进行赋值,
for (int i=0;i<arr.length;i++){
arr[i] = sc.nextInt();
}
// 遍历数组找出最大值
for(int i=0;i<arr.length;i++){
if (arr[i]>max){
max = arr[i];
}
}
System.out.println("最高分是:" + max);
// 通过for循环和if判断每个成绩对应的等级
for (int i=0;i<arr.length;i++){
if (arr[i]>=max-10){
grade[i] = 'A';
}
else if (arr[i]>=max-20){
grade[i] = 'B';
}
else if (arr[i]>max-30){
grade[i] = 'C';
}
else{
grade[i] = 'D';
}
}
// 循环遍历两个数组,输出成绩与对应的等级
for (int i=0;i<arr.length;i++){
System.out.println("student "+ i + " score is "+ arr[i] + " grade is " + grade[i]);
}
}
}
通过这个简单的Java程序,我们可以方便地输入学生的成绩并划分等级。这个程序可以作为学生成绩管理系统的一个模块,帮助教师快速了解学生的学习情况。