JAVA学生管理小代码

student类

package 徐新;


public class Student {
    private String id;
    private String name;
    private char gender;
    private int age;
    private double score;

    public Student(String id, String name, char gender, int age) {
        this.id = id;
        this.name = name;
        this.gender = gender;
        this.age = age;
    }

    public String getId() {
        return id;
    }

    public String getName() {
        return name;
    }

    public char getGender() {
        return gender;
    }

    public int getAge() {
        return age;
    }

    public double getScore() {
        return score;
    }

    public void setScore(double score) {
        this.score = score;
    }
}

    
    
    
    

StudentManagementSystem类

import java.util.ArrayList;
import java.util.Scanner;

public class StudentManagementSystem {
	    private ArrayList<Student> students;
	    private int studentCount;

	    public StudentManagementSystem() {
	        students = new ArrayList<>();
	        studentCount = 0;
	    }

	    public void start() {
	        Scanner scanner = new Scanner(System.in);

	        while (true) {
	            System.out.println("1. 系统设置");
	            System.out.println("2. 添加学生信息");
	            System.out.println("3. 查找学生信息");
	            System.out.println("4. 删除学生信息");
	            System.out.println("5. 成绩录入");
	            System.out.println("6. 成绩统计");
	            System.out.println("0. 退出系统");

	            System.out.print("请输入选项:");
	            int option = scanner.nextInt();

	            switch (option) {
	                case 1:
	                    setStudentCount(scanner);
	                    break;
	                case 2:
	                    addStudent(scanner);
	                    break;
	                case 3:
	                    findStudent(scanner);
	                    break;
	                case 4:
	                    deleteStudent(scanner);
	                    break;
	                case 5:
	                    enterScore(scanner);
	                    break;
	                case 6:
	                    calculateAverageScore();
	                    break;
	                case 0:
	                    System.out.println("退出系统!");
	                    return;
	                default:
	                    System.out.println("无效的选项!");
	            }

	            System.out.println();
	        }
	    }

	    private void setStudentCount(Scanner scanner) {
	        System.out.print("请输入学生总数: ");
	        studentCount = scanner.nextInt();
	        System.out.println("系统设置完成");
	    }

	    private void addStudent(Scanner scanner) {
	        for (int i = 0; i < studentCount; i++) {
	            System.out.println("请输入第 " + (i + 1) + " 个学生信息");

	            System.out.print("学号: ");
	            String id = scanner.next();

	            System.out.print("姓名: ");
	            String name = scanner.next();

	            System.out.print("性别: ");
	            char gender = scanner.next().charAt(0);

	            System.out.print("年龄: ");
	            int age = scanner.nextInt();

//	            if () {
//	                System.out.println("录入失败,错误信息是:学号重复");
//	                continue;
//	            }

	            students.add(new Student(id, name, gender, age));

	            if (students.size() == studentCount) {
	                System.out.println("学生信息全部添加完成!");
	                break;
	            }

	            System.out.println("添加学生信息结束!");

	            System.out.print("是否继续添加学生信息?(y/n): ");
	            String choice = scanner.next();

	            if (!choice.equalsIgnoreCase("y")) {
	                break;
	            }
	        }
	    }

	    private void findStudent(Scanner scanner) {
	        System.out.print("请输入要查找的学生学号: ");
	        String id = scanner.next();

	        for (Student student : students) {
	            if (student.getId().equals(id)) {
	                System.out.println("学号: " + student.getId());
	                System.out.println("姓名: " + student.getName());
	                System.out.println("性别: " + student.getGender());
	                System.out.println("年龄: " + student.getAge());

	                return;
	            }
	        }

	        System.out.println("对不起,没有找到学号为 " + id + " 的学生信息");
	    }

	    private void deleteStudent(Scanner scanner) {
	        System.out.print("请输入要删除的学生学号: ");
	        String id = scanner.next();

	        boolean deleted = false;

	        for (Student student : students) {
	            if (student.getId().equals(id)) {
	                students.remove(student);
	                deleted = true;
	                System.out.println("删除成功!");
	                break;
	            }
	        }

	        if (!deleted) {
	            System.out.println("删除失败,错误信息是:此学号不存在");
	        }
	    }

	    private void enterScore(Scanner scanner) {
	        System.out.print("请输入要录入成绩的学生学号:");
	        String id = scanner.next();
	        System.out.print("请输入该生成绩:");
	        double score = scanner.nextDouble();
	        
	        for (Student student : students) {
	            if (student.getId().equals(id)) {
	                student.setScore(score);
	                return;
	            }
	        }  
	    }
	    private void calculateAverageScore() {
	    	if(students.size() == 0){
	            System.out.println("无信息,清先添加信息再查询");
	            return;
	        }	    	
			int allScore = 0;
			int avgScore = 0;
	    	for(int i=0; i<students.size(); i++){
	            Student student = students.get(i);
	            allScore += student.getScore();
	        }   
	    	avgScore = allScore / students.size();
	    	System.out.println("平均成绩是:" + avgScore);
	    	
	    }

	    
}

test类

public class test {

	public static void main(String[] args) {
		StudentManagementSystem sm = new StudentManagementSystem();
		sm.start();

	}

}

运行结果

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值