qq_51499539 2021-12-01 15:47 采纳率: 40%
浏览 38
已结题

JAVA学生管理系统

import java.util.Scanner;

public class Demo {
static Stu[] Stu = new Stu[55];
static int number = 0;
static Scanner scanner = new Scanner(System.in);

public static void main(String[] args) {
    int choice;
    System.out.println("这是一个学生的管理系统");
    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:退出");
        choice = scanner.nextInt();
        if(choice==7)
            break;
        switch (choice){
            case 1:
                add(); break;
            case 2:
                show();break;
            case 3:
                change();break;
            case 4:
                query();break;
            case 5:
                delete();break;
            case 6:
                quit();break;

        }
    }
    System.out.println("感谢你对本系统的操作");
}
static void add(){
    while (true){
        System.out.println("请输入学生的相关信息");
        Stu[number] = new Stu();
        Stu[number].setStuNum(scanner.next());
        Stu[number].setName(scanner.next());
        Stu[number].setSex(scanner.next());
        Stu[number].setAge (scanner.nextInt());
        Stu[number].setScore(scanner.nextInt());
        number++;
        System.out.println("添加成功");
        System.out.println("是否继续添加(y/n)");
        if("n".equals(scanner.next()))break;
    }
}
static void show(){
    System.out.println("*******************************************");
    System.out.println(" 学号             姓名                          性别              年龄                成绩");
    for(int i=0;i<number;i++)
        System.out.println(Stu[i].getStuNum()+"\t"+Stu[i].getName()+"\t"+"\t"+Stu[i].getSex()+"\t"+Stu[i].getAge()+"\t"+Stu[i].getScore());
    System.out.println();
}
static void change(){
    System.out.println("请输入你要修改信息的学生学号");
    String Stunumber = scanner.next();
    for (int i = 0; i <number ; i++) {
        if (Stunumber.equals(Stu[i].getStuNum())){
            System.out.println("请输入要修改的学生的信息:学号,姓名,性别,年龄,分数");
            Stu[i].setStuNum(scanner.next());
            Stu[i].setName(scanner.next());
            Stu[i].setSex(scanner.next());
            Stu[i].setAge (scanner.nextInt());
            Stu[i].setScore(scanner.nextInt());
            break;
        }
        if(number == i) System.out.println("没有找到学号相应的学生");
    }
}
static void query() {
    System.out.println("请输入要查询的学生学号");
    String Stunumber = scanner.next();
    int i;
    for (i = 0; i < number; i++) {
        if (Stunumber.equals(Stu[i].getStuNum())) {
            System.out.println("*******************************************");
            System.out.println(" 学号             姓名                          性别              年龄                成绩");
            System.out.println(Stu[i].getStuNum() + "\t" + Stu[i].getName() + "\t" + "\t" + Stu[i].getSex() + "\t" + Stu[i].getAge() + "\t" + Stu[i].getScore());
            System.out.println("*******************************************");
        }
    }
    if (number == i) System.out.println("对不起查无此人");
}
static void delete(){
    System.out.println("请输入要删除的学生的信息:学号,姓名,性别,年龄,分数");
    String Stunumber = scanner.next();
    int m=0 ;
    for (int j = 0; j <number ; j++) {
        if (Stunumber.equals(Stu[j].getStuNum())) break;
        if(number == m) System.out.println("没有找到学号相应的学生");
        for ( ;m<number-1;m++)
            Stu[m]=Stu[m+1];
        number--;
        System.out.println("删除完成");
        System.out.println("是否继续删除");
        if("n".equals(scanner.next()))break;
    }
}
static void quit(){
    System.out.println("退出程序");
}

}

我想在最后选择6退出程序,而不是出现下面这种情况

img

  • 写回答

1条回答 默认 最新

  • bingbingyihao 2021-12-01 16:01
    关注

    回答:在末尾加上System.exit(0);试试

    img

    img

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 12月9日
  • 已采纳回答 12月1日
  • 创建了问题 12月1日

悬赏问题

  • ¥15 对象代号: , 表单: 不存在!
  • ¥15 WebSocket的问题
  • ¥15 centos上启动kylin后网页报错404
  • ¥20 使用hackrf进行信号收发时接收到的信号幅度太小
  • ¥15 WebSocket的问题
  • ¥15 BDSBAS-B1C和B1C信号有什么不同
  • ¥15 在半圆平面内随机生成点坐标
  • ¥15 系统容量变化的几种多址方式TDMA, CDMA,FDMA,OFDMA 对比,应该给的是一个曲线 图,随着系统容量的增加,几种多址方式性能的对比 图,MATLAB程序仿真折线图
  • ¥15 用visual Studio 写c ++只运行上一个旧代码的运行结果是怎么回事
  • ¥15 系统容量变化的几种多址方式(TDMA,FDMA,OFDMA,CDMA)对比(相关搜索:曲线图)