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日

相关文章

  • 5分钟快速创建spring boot项目的完整步骤

    下面我将为您详细讲解“5分钟快速创建springboot项目的完整步骤”的攻略: 确定项目名称及配置环境 在开发机器上安装并配置好Java的环境变量及相关依赖。 确定项目的名称和描述。如“hello-world-springboot”。 打开网址https://start.spring.io/。这是官方提供的springboot项目生成器,可以方便地帮助我们…

    Java 2023年5月15日
    00
  • Java 将一个字符重复n遍过程详解

    当我们需要将一个字符重复n遍时,我们可以使用Java的String类提供的重复方法repeat()。 该方法接受一个参数n,表示需要将字符重复的次数,然后返回一个新的字符串,其中指定的字符被重复n次。下面是使用repeat()方法的基本语法: String repeatedString = "a".repeat(n); 该语句将创建一个由…

    Java 2023年5月27日
    00
  • Java下使用Oracle存储过程(详解)第1/3页

    学习Java下使用Oracle存储过程,需要掌握以下几个方面: 存储过程的基本概念及语法; Oracle JDBC驱动程序的使用; Java中执行存储过程的方法。 下面分别详细介绍。 1. 存储过程的基本概念及语法 存储过程是一段经过编译并存储在数据库中的一段程序,可以在需要时执行。在Oracle数据库中,存储过程使用PL/SQL语言来编写。 下面是一个简单…

    Java 2023年6月15日
    00
  • K均值聚类算法的Java版实现代码示例

    让我来详细讲解“K均值聚类算法的Java版实现代码示例”的完整攻略。 1. K均值聚类算法简介 K均值聚类算法是一种常用的无监督机器学习算法,常用于数据挖掘、图像分割以及客户分类等场景中。它的基本原理是:将n个数据点划分成k个簇,使得每个点都属于其最近的中心点所在的簇,这些中心点是通过簇内点的平均值计算而得。 2. Java代码示例说明 对于Java程序员来…

    Java 2023年5月19日
    00
  • Mybatis 创建方法、全局配置教程详解

    首先我们来讲解Mybatis的创建方法和全局配置教程。 Mybatis 创建方法 第一步:引入Mybatis依赖 你需要在项目中引入Mybatis的依赖,可以通过Maven或Gradle管理工具来引入。比如Maven的配置如下: <dependency> <groupId>org.mybatis</groupId> &lt…

    Java 2023年5月20日
    00
  • 手写Java LockSupport的示例代码

    下面就手写Java LockSupport的示例代码进行详细讲解。 1. LockSupport简介 在Java中,当一个线程对某个对象的synchronized锁进行等待时,只有主动释放锁的线程或抢占了锁的线程才能解除等待;而LockSupport则是提供了一种更加灵活的线程等待/唤醒机制。LockSupport不需要使用锁和条件变量来实现线程的同步和通信…

    Java 2023年5月30日
    00
  • 基于ajax实现验证码功能

    实现验证码功能通常都会使用图片形式的验证码。但是,这种验证码存在一定的缺陷,例如图片难以识别、容易被机器识别等问题。因此,在某些情况下,我们可以考虑使用基于ajax实现的验证码功能来提高安全性。 具体实现步骤如下: 1.创建验证码php文件 首先,我们需要创建一个名为captcha.php的php文件,用于生成并输出验证码图片。代码示例如下: session…

    Java 2023年6月15日
    00
  • java实现简单聊天软件

    Java实现简单聊天软件可以分为以下几个步骤: 1. 确定协议 聊天软件需要一套协议来规定客户端和服务器之间的通信方式。常用的协议有TCP和UDP。TCP协议传输可靠,但是速度慢,而UDP协议则速度快但是不可靠。在选择协议的时候,应该根据具体的需求来决定。在本例中,我们选择使用TCP协议。 2. 编写服务器端 服务器端需要监听指定的端口,等待客户端连接。当接…

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