例题:学生管理系统

C++小项目:学生管理系统 此项目为一个小型学生管理系统,仅供初学者学习交流使用,使用者可以在此项目中用已学的C++基础知识进行实战演练,加深对所学知识的了解。 写在前面:项目中的要点提炼。 1、在每次进入最初登陆界面时,由于要再次加载文件内容,因此需先将list underst 和 list ad 中的内容使用clear()函数清空后再读入。 2、在读取文件时,由于使用!infile.eof()函数会导致最后一行读取两次... 阅读详情

学生管理系统实现思路

1、定义学生类
2、主界面的代码编写
3、添加学生的代码编写
4、查看学生的代码编写
5、删除学生的代码编写
6、修改学生的代码编写

1、定义学生类

学生类:Student
成员变量:
学号:sid
姓名:name
年龄:age
居住地:address
构造方法:
无参构造
带四个参数的参构造

public class Student {
    private String sid;
    private String name;
    private String age;
    private String address;

    public Student(){

    }

    public Student(String sid,String name,String age,String address){
        this.sid = sid;
        this.name = name;
        this.age = age;
        this.address = address;
        }

        public String getSid() {
            return sid;
        }

        public void setSid(String sid) {
            this.sid = sid;
        }

        public String getName() {
            return name;
        }

        public void setName(String name) {
            this.name = name;
        }

        public String getAge() {
            return age;
        }

        public void setAge(String age) {
            this.age = age;
        }

        public String getAddress() {
            return address;
        }

        public void setAddress(String address) {
            this.address = address;
        }

2、主界面的代码编写

public static void main(String[] args) {
        //创建集合对象,用于存储学生数据
       ArrayList<Student> array=new ArrayList<Student>();
       //用于循环完成再次回到主界面
        while(true){
       //用输出语句完成主界面的编写
        System.out.println("----欢迎来到学生管理系统----");
        System.out.println("1 添加学生");
        System.out.println("2 删除学生");
        System.out.println("3 修改学生");
        System.out.println("4 查看所有学生");
        System.out.println("5 退出");
        System.out.println("请输入您的选择:");

        //用Scanner实现键盘录入数据
        Scanner sc = new Scanner(System.in);
        String line = sc.nextLine();
        //用switch语句完成操作的选择
        switch (line) {
            case "1":
  //              System.out.println("1 添加学生");
                addStudent(array);
                break;
            case "2":
 //               System.out.println("2 删除学生");
                deleteStudent(array);
                break;
            case "3":
//              System.out.println("3 修改学生");
                updateStudent(array);
                break;
            case "4":
//                System.out.println("4 查看所有学生");
                findAllStudent(array);
                break;
            case "5":
                System.out.println("5 谢谢使用 ");
                System.exit(0);
            }
        }
        }

3、添加学生的代码编写

public static void addStudent(ArrayList<Student> array){
        //键盘录入学生对象所需要的数据,显示提示信息,提升要输入何种信息
        Scanner sc = new Scanner(System.in);

        System.out.println("请输入学生的学号");
        String sid = sc.nextLine();
        System.out.println("请输入学生的姓名");
        String name = sc.nextLine();
        System.out.println("请输入学生的年龄");
        String age = sc.nextLine();
        System.out.println("请输入学生的居住地");
        String address = sc.nextLine();

        //创建学生对象,把键盘录入的数据赋值给学生对象的成员变量
        Student s = new Student();
        s.setSid(sid);
        s.setName(name);
        s.setAge(age);
        s.setAddress(address);

       //将学生对象添加到集合中
        array.add(s);

        //给出添加成功的提示
        System.out.println("添加学生成功");
    }

4、查看学生的代码编写

public static void findAllStudent(ArrayList<Student> array){
        //判断集合中是否有数据,如果没有显示提示信息
        if (array.size() == 0){
            System.out.println("无信息,请先添加信息再查询");
            return;
        }
        //显示表头信息
        // \t 其实就是tap键的位置
        System.out.println("学号\t\t姓名\t年龄\t居住地");

        //将集合中数据取出按照对应格式显示学生信息,年龄显示补充”岁“
        for (int i=0;i<array.size();i++){
            Student s = array.get(i);
            System.out.println(s.getSid()+"\t"+s.getName()+"\t"+s.getAge()+"岁\t\t"+s.getAddress());
        }
    }

5、删除学生的代码编写

 public static void deleteStudent(ArrayList<Student> array){
        //键盘录入要删除的学生学号,显示提示信息
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入你要删除的学生学号");
        String sid = sc.nextLine();

        //遍历集合将对应学生对象从集合中删除
        for (int i=0;i< array.size();i++){
            Student s = array.get(i);
                if (s.getSid().equals(sid)) {
                array.remove(i);
                break;
                }
            }
        //给出删除提示
        System.out.println("删除学生成功");
        }

6、修改学生的代码编写

 public static void updateStudent(ArrayList<Student> array) {
        //显示提示信息
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入你要修改的学生学号");
        String sid = sc.nextLine();

        //键盘录入要修改的学生信息
        System.out.println("请输入学生新姓名");
        String name = sc.nextLine();
        System.out.println("请输入学生新年龄");
        String age = sc.nextLine();
        System.out.println("请输入学生新居住地");
        String address = sc.nextLine();

        //创建学生对象
        Student s = new Student();
        s.setSid(sid);
        s.setName(name);
        s.setAge(age);
        s.setAddress(address);

        //遍历集合修改对应的学生信息
        for (int i = 0; i < array.size(); i++) {
            Student student = array.get(i);
            if (student.getSid().equals(sid)){
                array.set(i,s);
                break;
            }
            System.out.println("修改成功");
        }
        }
Java小项目-学生管理系统 package e; /* * 这是我的学生类 */ public class Student { //学号 private String id; //姓名 private String name; //年龄 private String age; //居住地 private String address; public Student() { } public Student(String id, String name, String age, String address 阅读详情

相关推荐

yolov5 onnx推理时报错[ONNXRuntimeError] : 2 : INVALID_ARGUMENT : Unexpected input data type.

yolov5 onnxruntime 推理报错

zjulkw的博客 1223

C. 类的定义、对象数组的使用(2)

定义一个StudentList类用来存储Student对象 属性有 1)Student[] list; //list存储学生对象 2)int total; //学生总人数 方法有: 1)StudentList(int length) //length是数组长度 2)boolean add(Student stu) //增加stu到数组中,成功,返回true,否则false 3)boolean...

wyh196646的博客 3565

Power Bi数据分析案例:在线零售平台销售数据分析

该数据集为,涵盖2023年1月至2024年3月,包含用户群体特征、购买行为、产品偏好以及参与度指标。用户维度:Customer_ID,Age,Gender,City产品维度:Product_Category,Unit_Price事实表:Order_ID,Quantity,Total_Amount,Discount_Amount,Rating,Delivery_Time在Power Query当中处理销售日期列,并新增年龄段、浏览页面分段列。

2301_79586168的博客 1278

接口的定义与实现

1.接口的定义与实现 接收者是指针*T时,接口实例必须是指针 接收者是值 T时,接口实力可以是指针也可以是值 接口的定义和类型转换与接收者的定义是关联的 2. package main import “fmt” type Humaner interface { //方法,只有声明没有实现,有别的类型(自定义类型)实现 sayhi() } type Student struct { name string id int } //student实现此方法 func (tmp *Student)

华龙在飞翔 350

硬件工程师必看:5种ESD保护电路设计实战解析(附电路图)

本文为硬件工程师深度解析5种实战ESD保护电路设计,涵盖TVS二极管、专用保护芯片、片上防护及高速射频场景方案。通过具体电路图,详解工作原理、选型要点及PCB布局黄金法则,重点强调ESD防护设计中的能量泄放路径管理与低阻抗实现,助力提升产品可靠性。

xk7n92h3p5m的博客 638

从BAM到bigWig:用UCSC工具链完成测序数据可视化的完整流程

本文详细介绍了从BAM文件到bigWig格式的基因组数据可视化完整流程,涵盖UCSC工具链配置、文件格式转换、参数优化及常见问题解决方案。通过实战指南帮助研究人员高效完成测序数据可视化,特别适合ChIP-seq和RNA-seq数据分析。

weixin_29309213的博客 707

重写了一个学生管理程序(作业题)更新版

系统中国 2646

esp32s3 spi camera gc6133调试

gc6133 spi只有master模式,同时需要esp32提供主时钟,需要有主时钟然后才能通过i2c进行初始化.测试了几种方式,记录如下。

hclydao的专栏 1564

综合例题:学生管理系统

使用面向对象的编程方式编写一个学生管理系统: 分析一下业务,这个系统将具有什么功能。例如:1.学生入学,2.查询学生,3报表统计,4.退出系统。 然后就可以先写出一个界面,提供以上选项: 既然是管理系统那存储的就是学生的资料,学生的资料便是学生的各种属性,所以分析学生具有的属性有哪些,例如:名字,年龄,性别,地址,邮箱等等。 自然接下来就...

weixin_33862188的博客 494

深度解析电力负荷预测:基于深度学习的完整实战指南

电力负荷预测是智能电网运行中的核心技术之一,准确的负荷预测对于电网的稳定运行、电力市场交易以及能源调度具有重要意义。本文将详细介绍电力负荷预测的完整解决方案,从数据预处理、特征工程到模型构建与评估,提供完整的可执行代码。我们将使用LSTM(长短期记忆网络)和Transformer两种主流深度学习模型进行实现,并通过实际数据集验证模型效果。电力负荷预测是指根据历史负荷数据、气象因素、时间特征等多维信息,预测未来某一时段的电力需求。超短期负荷预测:未来几分钟到几小时短期负荷预测:未来1天到1周中期负荷预测。

YOLO 111

11、机器学习中的聚类与隐马尔可夫模型

本文介绍了机器学习中的两种重要方法:聚类算法和隐马尔可夫模型(HMM)。聚类作为无监督学习的代表,适用于发现无标签数据中的结构,常见算法包括K-均值和自组织映射(SOM),并在传感器数据分析等场景中展现应用价值。隐马尔可夫模型则是一种可解释的序列模型,用于从观测数据中推断隐藏状态,广泛应用于语音识别、自然语言处理和生物信息学等领域。文章详细讲解了HMM的核心概念如马尔可夫性质、转移与发射概率,并通过TensorFlow实现了前向算法,展示了其计算观测序列概率的动态规划思想。最后对比了两类方法的应用场景,展望

garlic的博客 179

Java项目:学生管理系统

Java项目:学生管理系统。包括登录、注册、忘记密码;学生信息的增删改查。

iFulling的博客 1万+

【即插即用模块】Transformer篇 | ICCV 2025 | MALA :注意力分布神似Softmax,告别线性注意力性能短板!

MALA(Magnitude-Aware Linear Attention)是一种改进的线性注意力机制,通过引入缩放因子和偏移项,解决了传统线性注意力忽视查询幅度的问题,使其分布更接近Softmax Attention。该模块具有线性复杂度(O(n)),结合RoPE和LEPE编码实现全局-局部位置信息混合,通过z值调制平衡信息权重。实验表明MALA在轻量级视觉任务中能有效平衡效率与精度,注意力可视化显示其分布与Softmax Attention高度相似。代码提供完整的RoPE位置编码和线性注意力

主要更新底层视觉(去噪、超分等)相关的科研内容,形式为【论文精读】+【论文复现】 1107

用Java代码实现学生管理系统

学生管理系统 1.1 项目演示 1.2 学生管理系统实现思路 定义学生类 主界面的代码编写 添加学生的代码编写 查看学生的代码编写 删除学生的的代码编写 修改学生的代码编写 1.3 定义学生类 学生类: Student 成员变量: 学号:sid 姓名:name 年龄:age 居住地:address 构造方法: 无参构造 带四个参数的构造 成员方法: 每个成员变量对应给出get/set方法 1.4 主界面的代码编写 思路 用输出语句完成主界面的编写 用Scanner实现键盘录

Prince_96的博客 4万+

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

【C语言】学生管理系统

添加必要的头文件和声明,之后定义学生信息结构体。学生信息结构体中含有必要的学生id、学生姓名和学生成绩,除此之外,也可以自行添加一些其他信息,如学生家庭年龄,学生住址,学生班级,学生教师,学生所属学校等// 学生信息结构体int id;/* 数据域 *//* 指针域 */} Student;可以将数据域和指针域分开来定义,使结构逻辑更加严整。int id;} Student;// 嵌套结构体} StuNode;

hdz_wiz_csdn的博客 6433

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

Java——学生管理系统

定义学生类 学生管理系统的主界面的代码编写 学生管理系统的查看所有学生的代码编写 学生管理系统的添加学生代码的编写 学生管理系统的删除学生的代码编写 学生管理系统的修改学生的代码编写

zywcxz的博客 1万+

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

学生管理系统

python学生管理系统

weixin_46557333的博客 7645

用eclipse写的学生管理系统

##写一个学生管理系统 定义一个学生类 Student package e; /* 这是我的学生类 */ public class Student { //学号 private String id; //姓名 private String name; //年龄 private String age; //居住地 private String address; public Student() { } public Student(String id, String name, String age, Str

Encounter041的博客 8410

简单学生管理系统

随着继续的学习,终于接触到了面向对象。学生管理系统是一个很好的案例来帮助我们更好的掌握所学习的知识点。return id;return age;主界面。

junflightzzz的博客 1819

Python学生管理系统

Python编程界的一枚小学生,热心分享编程学习经验。

漫步桔田 5688

利用JAVA制作学生管理系统

前言 经过为期一个多星期的时间,利用java完成了项目学生管理系统,下面就把整个项目的各个功能的具体实现总结一下与大家分享。 一.main public static void main(String[] args) ArrayList<Student> array = new ArrayList<Student>(); while (true) { System.out.println("--------欢迎来到学生管理系统-------")

clw615的博客 1732

学生管理系统项目

步骤如下: (1)定义学生类 (2)学生管理系统的主界面的代码编写 (3)学生管理系统查看所有学生的代码编写 (4)学生管理系统添加学生的代码编写 (5)学生管理系统删除的代码编写 (6)学生管理系统修改的代码编写

SilentLand的博客 2574
上一篇: 集合基础/Arraylist
下一篇: 进制之间的转换
筱筱_2022_
博客等级 码龄4年 1粉丝 13原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值