Java——从键盘获取学生成绩并排名等级

第一步: 导包:import java.util.Scanner;

第二步: 创建Scanner的对象:Scanner 对象名 = new Scanner(System.in);

第三步: 声明变量,将从键盘获取的内容赋给变量:数据类型 变量名 = 对象名.next数据类型()

例如:int score = scan.nextInt()

import java.util.Scanner;
import java.util.Vector;

public class ScoreTest {
    public static void main(String[] args) {
		//从键盘获取学生成绩
    	Scanner scan = new Scanner(System.in);
    	/*
    	 *创建Vector对象,相当于数组,这是一个动态数组,不需要提前知道数组的长度
    	 *可以随时添加元素,动态增加数组长度
    	*/
    	Vector v = new Vector();
    	//通过for循环给Vector添加元素
    	int maxScore = 0;
    	for(; ; ) {
    		System.out.print("请输入学生成绩(输入负数结束):");
    		int score = scan.nextInt();
    		if(score < 0) {
    			break;
    		}
    		if(score > 100) {
    			System.out.println("输入的成绩非法,请重新输入");
    			continue;
    		}
    		//元素添加操作,Vector所属方法参数需要是Object类,所以下面要将int型
    		//转换为Integer类
    		Integer inscore = Integer.valueOf(score);
    		v.addElement(inscore);
    		//获取成绩最大值
    		if(score > maxScore) {
    			maxScore = score;
    		}
    	}
    	System.out.println("成绩最高为:" + maxScore);
    	//遍历学生成绩,并分出等级
    	char level;
    	for(int i = 0;i < v.size();i++) {
    		//获取数组中的元素,记得获取的数据是属于Object类
    		Object obj = v.elementAt(i);
    		//下面要将obj(Object类)转换成int型才能进行数学运算和比较
    		int score = (int)obj;
    		if(maxScore - score <= 10) {
    			level = 'A';
    		}else if(maxScore - score <= 20) {
    			level = 'B';
    		}else if(maxScore - score <= 30) {
    			level = 'C';
    		}else {
    			level = 'D';
    		}
    		System.out.println("学生_" + i + "的成绩为:" + score + ";" + 
    		"等级为:" + level);
    	}
	}
}

运行结果: 

 


版权声明:本文为m0_47386561原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。