java大作业(控制台程序,没有任何框架,大学生必备)-- 学生管理系统

本篇分享一个Java期末大作业系统,Java期末大作业设计 学生管理系统
主页还有,多瞅瞅,别直接就抄了,你同学也在抄,要是答案都给你了还不会用,我建议你还是学一下qwq

package demo3; // 声明包名

import java.util.Scanner; // 从java.util包中导入Scanner类
import java.util.ArrayList; // 从java.util包中导入ArrayList类

/**
 * @author 高仕焕
 * @version 1.0
 * @date 2023/9/21
 * @time 23:25
 */
public class StudentManagementSystem { // 声明公共类StudentManagementSystem
    //思路

    public static void main(String[] args) { // 声明主方法

        //定义属性
        boolean loop = true; // 声明一个布尔变量来控制循环
        Scanner scanner = new Scanner(System.in); // 创建一个Scanner对象,用来获取用户输入
        String key = ""; // 声明一个字符串变量,用来存储用户输入
        ArrayList<Student> students = new ArrayList<>(); // 声明一个ArrayList,用来存储Student对象

        do{ // 开始do-while循环
            //显示菜单
            new Menu().menu(); // 显示菜单
            key = scanner.next(); // 获取用户输入
            switch (key){ // 开始switch语句
                case "1": // 情况1:添加学生
                    System.out.println("请输入学生信息:"); // 提示用户输入学生信息
                    Student student = new Student(); // 创建一个新的Student对象
                    System.out.println("请输入学号:"); // 提示用户输入学生ID
                    student.id = scanner.nextInt(); // 从用户输入中获取学生ID
                    System.out.println("请输入姓名:"); // 提示用户输入学生姓名
                    student.name = scanner.next(); // 从用户输入中获取学生姓名
                    System.out.println("请输入语文成绩:"); // 提示用户输入语文成绩
                    student.chinese = scanner.nextDouble(); // 从用户输入中获取语文成绩
                    System.out.println("请输入高数成绩:"); // 提示用户输入数学成绩
                    student.math = scanner.nextDouble(); // 从用户输入中获取数学成绩
                    System.out.println("请输入C语言成绩:"); // 提示用户输入C语言成绩
                    student.c_language = scanner.nextDouble(); // 从用户输入中获取C语言成绩
                    System.out.println("请输入数据结构成绩:"); // 提示用户输入数据结构成绩
                    student.data_structure = scanner.nextDouble(); // 从用户输入中获取数据结构成绩
                    students.add(student); // 将Student对象添加到ArrayList中
                    System.out.println("学生信息添加成功!"); // 打印成功消息
                    break; // 结束情况1

                case "2": // 情况2:删除学生
                    System.out.println("请输入要删除的学生学号:"); // 提示用户输入要删除的学生ID
                    int deleteId = scanner.nextInt(); // 从用户输入中获取学生ID
                    for (int i = 0; i < students.size(); i++) { // 遍历ArrayList
                        if (students.get(i).id == deleteId) { // 如果找到了要删除的学生
                            students.remove(i); // 从ArrayList中删除学生
                            System.out.println("学生信息删除成功!"); // 打印成功消息
                            break; // 结束循环
                        }
                    }
                    break; // 结束情况2
                case "3": // 情况3:修改学生
                    System.out.println("请输入要修改的学生学号:"); // 提示用户输入要修改的学生ID
                    int modifyId = scanner.nextInt(); // 从用户输入中获取学生ID
                    for (Student s : students) { // 遍历ArrayList
                        if (s.id == modifyId) { // 如果找到了要修改的学生
                            System.out.println("请输入新的学生姓名:"); // 提示用户输入新的学生姓名
                            s.name = scanner.next(); // 从用户输入中获取新的学生姓名
                            System.out.println("请输入新的语文成绩:"); // 提示用户输入新的语文成绩
                            s.chinese = scanner.nextDouble(); // 从用户输入中获取新的语文成绩
                            System.out.println("请输入新的高数成绩:"); // 提示用户输入新的数学成绩
                            s.math = scanner.nextDouble(); // 从用户输入中获取新的数学成绩
                            System.out.println("请输入新的C语言成绩:"); // 提示用户输入新的C语言成绩
                            s.c_language = scanner.nextDouble(); // 从用户输入中获取新的C语言成绩
                            System.out.println("请输入新的数据结构成绩:"); // 提示用户输入新的数据结构成绩
                            s.data_structure = scanner.nextDouble(); // 从用户输入中获取新的数据结构成绩
                            System.out.println("学生信息修改成功!"); // 打印成功消息
                            break; // 结束循环
                        }
                    }
                    break; // 结束情况3
                case "4": // 情况4:查找学生
                    System.out.println("请输入要查找的学生学号:"); // 提示用户输入要查找的学生ID
                    int searchId = scanner.nextInt(); // 从用户输入中获取学生ID
                    for (Student s : students) { // 遍历ArrayList
                        if (s.id == searchId) { // 如果找到了要查找的学生
                            System.out.println("找到学生信息:"); // 打印消息
                            System.out.println("学号:" + s.id); // 打印学生ID
                            System.out.println("姓名:" + s.name); // 打印学生姓名
                            System.out.println("语文成绩:" + s.chinese); // 打印语文成绩
                            System.out.println("高数成绩:" + s.math); // 打印数学成绩
                            System.out.println("C语言成绩:" + s.c_language); // 打印C语言成绩
                            System.out.println("数据结构成绩:" + s.data_structure); // 打印数据结构成绩
                            break; // 结束循环
                        }
                    }
                    break; // 结束情况4
                case "5": // 情况5:查看所有学生
                    System.out.println("以下是所有学生的信息:"); // 打印消息
                    for (Student s : students) { // 遍历ArrayList
                        System.out.println("学号:" + s.id); // 打印学生ID
                        System.out.println("姓名:" + s.name); // 打印学生姓名
                        System.out.println("语文成绩:" + s.chinese); // 打印语文成绩
                        System.out.println("高数成绩:" + s.math); // 打印数学成绩
                        System.out.println("C语言成绩:" + s.c_language); // 打印C语言成绩
                        System.out.println("数据结构成绩:" + s.data_structure); // 打印数据结构成绩
                    }
                    break; // 结束情况5
                case "6": // 情况6:退出程序
                    loop = false; // 设置loop为false,结束循环
                    System.out.println("退出程序"); // 打印消息
                    break; // 结束情况6
            }

        }while(loop); // 结束do-while循环

    }



}


//菜单类
class Menu{
    public void menu(){
        System.out.println("\n========学生管理系统========"); //打印主菜单
        System.out.println("\t\t1.添加学生");
        System.out.println("\t\t2.删除学生");
        System.out.println("\t\t3.修改学生");
        System.out.println("\t\t4.查找学生");
        System.out.println("\t\t5.查看所有学生");
        System.out.println("\t\t6.退出程序");
        System.out.println("请输入你的选择:");

    }
}


//学生类
class Student{
    //创建学生的基本属性
    //1.学号//唯一标识
    //2.姓名
    //3.语文成绩
    //4.高数成绩
    //5.C语言成绩
    //6.数据结构成绩

    int id; // 学生ID
    String name; // 学生姓名
    double chinese; // 语文成绩
    double math; // 数学成绩
    double c_language; // C语言成绩
    double data_structure; // 数据结构成绩


}


用来完成大作业的。文档内容: 1 Java技术体系 1.1 Java语言 1.2 Java平台 1.3 Java应用领域 2 Java语言的技术特点 2.1 1 2.2 2 2.3 3 3 Java语言与C++的异同分析总结。 4 选用C和java语言时编程算法程序有什么不同,有什么优势和劣势。 5 自己编程学习的级别和状态。以及自己以后的编程学习的计划和想法。 6 下面3道题目中选一道,给出算法分析和程序。 1)“黄金分割数”在我们的生活中很常见,但是在不同的应用领域,要求的精度也不一样。 例如:三位小数是0.618 现在我们需要你能求出保留100位小数的黄金分割数,采用的算法为“分层计算法”: 黄金数= 1 --------------- 1+ 1 ------------- 1+ 1 ----------- 1+ 1 --------- ..... 注意,计算出的结果,如果第100位为0也需要保留。 2)已知一个数列: 5,2,4,3,7,6 那么,在这个数列中存在这样一些“连续数”,例如:5,2,4,3这个子数列排序后是连续的。同样2,4,3也是连续的,为了方便表示 我们使用下标来标识,这样,这个数列中存在以下“连续数”: [1,1] [1,4] [1,6] [2,2] [2,4] [3,3] [3,4] [4,4] [5,5] [5,6] [6,6] 这样,他就存在11个“连续数”。现在需要你在用户找出一个数组中所有的“连续数”。 要求: 1、用户输入一个整数N,表示下面数组的个数 2、用户每输入一行作为一个数组 如: 用户输入: 1 5,2,4,3,7,6 程序输出: 11 3)有一种数我们称之为幸运数,它的特点是这样的,首先,由自然数按顺序排列: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 … 这样,1比较特殊, 1为第一个幸运数,那么,我们移除掉序号能被2整除的数(注意:是序号,而不是数本身,每次移除后都重新排序)就剩下: 1 3 5 7 9 11 13 15 17 19… 3为第二个幸运数,那么我们需要去掉序号能被3(下一次是除4,然后是5,每次加1)整除的数,5 11 17...剩下: 1 3 7 9 13 15 19… 那么7为第三个幸运数,后面的幸运数,依此类推,移除之后剩下的数字都是幸运数。 现在我们需要你求出给定的m和n之间的幸运数的个数: 例如:给定1 20,那么个数为:5(5个幸运数分别是1,3,7,13,19) 现在要求用户输入两个数m和n(m<n<=1000*1000),输出幸运数的个数。 例如: 用户输入: 1 20 程序输出: 5 格式:小四,1.5倍行距
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值