java实现学生成绩录入系统

Java实现学生成绩录入系统

系统功能

本系统是一个学生成绩录入系统,主要功能如下:

  1. 录入学生成绩
  2. 显示学生成绩
  3. 查询学生成绩
  4. 修改学生成绩
  5. 删除学生成绩
  6. 退出系统

系统设计

系统设计有两个部分:学生类和学生成绩类。学生类包含学生的姓名和学号等基本信息,学生成绩类包含学生的各科成绩和总分等信息。

学生类

public class Student {
    private String name;    // 姓名
    private String id;      // 学号

    public Student(String name, String id) {
        this.name = name;
        this.id = id;
    }

    // getter和setter方法省略
}

学生成绩类

public class Score {
    private Student student;    // 学生信息
    private int math;           // 数学成绩
    private int english;        // 英语成绩
    private int science;        // 科学成绩
    private int total;          // 总分

    public Score(Student student, int math, int english, int science, int total) {
        this.student = student;
        this.math = math;
        this.english = english;
        this.science = science;
        this.total = total;
    }

    // getter和setter方法省略
}

系统实现

录入学生成绩

List<Score> scores = new ArrayList<>();
Scanner scanner = new Scanner(System.in);
while (true) {
    System.out.println("请输入学生姓名:");
    String name = scanner.nextLine();
    System.out.println("请输入学生学号:");
    String id = scanner.nextLine();
    System.out.println("请输入学生数学成绩:");
    int math = scanner.nextInt();
    System.out.println("请输入学生英语成绩:");
    int english = scanner.nextInt();
    System.out.println("请输入学生科学成绩:");
    int science = scanner.nextInt();
    int total = math + english + science;
    scanner.nextLine(); // 清空缓存
    Student student = new Student(name, id);
    Score score = new Score(student, math, english, science, total);
    scores.add(score);
    System.out.println("添加成功!");
    System.out.println("是否继续添加?(y/n)");
    String choice = scanner.nextLine();
    if (choice.equals("n")) {
        break;
    }
}

显示学生成绩

for (Score score : scores) {
    System.out.println("姓名:" + score.getStudent().getName());
    System.out.println("学号:" + score.getStudent().getId());
    System.out.println("数学成绩:" + score.getMath());
    System.out.println("英语成绩:" + score.getEnglish());
    System.out.println("科学成绩:" + score.getScience());
    System.out.println("总分:" + score.getTotal());
}

查询学生成绩

System.out.println("请输入要查询的学生姓名:");
String name = scanner.nextLine();
for (Score score : scores) {
    if (score.getStudent().getName().equals(name)) {
        System.out.println("姓名:" + score.getStudent().getName());
        System.out.println("学号:" + score.getStudent().getId());
        System.out.println("数学成绩:" + score.getMath());
        System.out.println("英语成绩:" + score.getEnglish());
        System.out.println("科学成绩:" + score.getScience());
        System.out.println("总分:" + score.getTotal());
        break;
    }
}

修改学生成绩

System.out.println("请输入要修改的学生姓名:");
String name = scanner.nextLine();
for (Score score : scores) {
    if (score.getStudent().getName().equals(name)) {
        System.out.println("请输入新的数学成绩:");
        int math = scanner.nextInt();
        System.out.println("请输入新的英语成绩:");
        int english = scanner.nextInt();
        System.out.println("请输入新的科学成绩:");
        int science = scanner.nextInt();
        int total = math + english + science;
        score.setMath(math);
        score.setEnglish(english);
        score.setScience(science);
        score.setTotal(total);
        System.out.println("修改成功!");
        break;
    }
}

删除学生成绩

System.out.println("请输入要删除的学生姓名:");
String name = scanner.nextLine();
for (Score score : scores) {
    if (score.getStudent().getName().equals(name)) {
        scores.remove(score);
        System.out.println("删除成功!");
        break;
    }
}

退出系统

System.exit(0);

示例说明

示例一

假设录入了以下两个学生的成绩:

姓名 学号 数学成绩 英语成绩 科学成绩
张三丰 001 80 90 70
李四方丈 002 90 75 85

输出结果:

姓名:张三丰
学号:001
数学成绩:80
英语成绩:90
科学成绩:70
总分:240

姓名:李四方丈
学号:002
数学成绩:90
英语成绩:75
科学成绩:85
总分:250

示例二

假设要查询学号为001的学生的成绩:

输出结果:

请输入要查询的学生姓名:
张三丰
姓名:张三丰
学号:001
数学成绩:80
英语成绩:90
科学成绩:70
总分:240

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:java实现学生成绩录入系统 - Python技术站

(0)
上一篇 2023年5月24日
下一篇 2023年5月24日

相关文章

  • Spring引入外部属性文件配置数据库连接的步骤详解

    首先需要说明的是 Spring 引入外部属性文件配置数据库连接的过程非常简单,只需要遵循下面的几个步骤即可。 1. 创建属性文件 首先需要在项目的某个目录下创建一个属性文件,比如我们创建一个 db.properties 文件,用于存储数据库连接的相关信息,示例代码如下: jdbc.driver=com.mysql.jdbc.Driver jdbc.url=j…

    Java 2023年6月16日
    00
  • java中Struts2 的文件上传和下载示例

    Java中Struts2提供了方便的文件上传和下载的功能。下面将详细讲解文件上传和下载的示例。 文件上传示例 文件上传需要使用Struts2中的文件上传拦截器。详细步骤如下: 第一步:引入依赖 在项目的pom.xml文件中添加以下依赖: <dependency> <groupId>commons-fileupload</grou…

    Java 2023年5月20日
    00
  • Android学习笔记45之gson解析json

    Android学习笔记45之gson解析json 简介 Google推出的Gson是一个使用Java语言实现的Json解析库,可以将Json字符串自动解析成Java对象,或者将Java对象转成Json字符串。在Android开发中,使用Gson解析Json数据是非常常见的操作。本文将介绍Gson解析Json的完整攻略。 配置Gson库 在项目的build.g…

    Java 2023年5月26日
    00
  • Java内部类_动力节点Java学院整理

    Java内部类_动力节点Java学院整理 本篇攻略是针对Java的内部类进行详细讲解的,包括概念、特点、分类、语法等内容。 概念 内部类是指在一个类的内部定义的另一个类,它通常与外部类有某种联系。内部类是Java中一种非常重要的语法结构,包含了许多编程细节方便了程序员的编码。 特点 内部类可以直接访问外部类的成员变量和方法,包括私有成员。 外部类不能直接访问…

    Java 2023年5月26日
    00
  • 详解JavaScript中的函数、对象

    详解JavaScript中的函数 JavaScript中的函数是非常重要的一个概念,它不仅仅可以完成一些基本的计算和逻辑操作,还可以使用函数作为参数、返回值或者构造函数。以下是详细讲解函数的内容。 函数声明 在JavaScript中,函数的声明可以使用function关键字,其后跟随函数名、参数列表和函数体。 function add(a, b) { ret…

    Java 2023年5月26日
    00
  • 利用JSP session对象保持住登录状态

    利用JSP的session对象可以实现用户登录状态的保持和管理,下面是完整的攻略: 创建登录页面 创建一个简单的登录页面,包含一个用户名和密码的表单,在提交时向服务器发送POST请求。 示例代码如下: <!DOCTYPE html> <html> <head> <meta charset="UTF-8&qu…

    Java 2023年6月15日
    00
  • 详解基于SpringBoot使用AOP技术实现操作日志管理

    我来为你详细讲解如何使用AOP技术实现操作日志管理。 基于SpringBoot使用AOP技术实现操作日志管理 什么是AOP AOP(Aspect Oriented Programming)面向切面编程,是一种编程技术,主要用于解决代码耦合、重复代码等问题。AOP通过把代码横向分离成切面,从而避免了代码的重复。 在Java语言中,AOP技术主要通过代理模式和动…

    Java 2023年5月19日
    00
  • Java编写多功能万年历程序的实例分享

    Java编写多功能万年历程序的实例分享 本攻略将介绍使用Java编写多功能万年历程序的完整过程。 1. 概述 本程序的功能包括: 显示公历日期、星期、农历日期、节气、节日等信息 支持查看指定日期的信息 支持查询指定日期范围内的某个节日的日期 支持查询指定日期范围内的某个节气的日期 支持循环显示节日或节气日期 2. 准备工作 为了编写这个程序,您需要掌握Jav…

    Java 2023年5月20日
    00
合作推广
合作推广
分享本页
返回顶部