一个简易的学生成绩管理系统

简易成绩管理系统:
    分2大块功能
    1、实现一个菜单包括
        A注册 注册一个管理员账户
        B登录 通过注册的账户登录系统
        C退出 退出整个程序
    2、实现一个菜单
        A新增学生分数信息 循环新增学生的姓名与分数信息
        B修改学生分数信息 通过学生的姓名修改一个学生的分数
        C删除学生分数信息 通过学生的姓名删除一个学生的姓名与分数
        D查询学生信息 查询功能看第3小点
        E返回上级菜单
    3、查询学生信息中实现一个小菜单
        A查询学生分数 通过一个学生姓名查询一个学生分数
        B查询所有学生分数 查询所有学生的分数

package com.lovo.classes1122; import java.util.Scanner; public class gradeManager { static String [] usr = new String [3]; //定义全局变量 static int [] pwd = new int [3]; static String [] name = new String [5]; static int [] grade = new int [5]; public static void main(String[] args) { userMenu(); //调用初始菜单 } public static void userMenu(){ //初始用户菜单 while(true){ System.out.print("A.注册 "); System.out.print("B.登陆 "); System.out.println("C.退出 "); Scanner input=new Scanner(System.in); //输入操作编号 System.out.println("请输入操作:"); String operate =input.nextLine(); switch (operate) { //判断操作 case "A": case "a": register(); break; case "B": case "b": signIn(); break; case "C": case "c": System.out.println("系统已退出,欢迎使用!!!"); System.exit(-1); break; default: System.out.println("操作错误,请重新输入指令"); break; } } } public static void register(){ //注册 boolean flag1 = false; for (int i = 0; i < usr.length; i++) { if (usr[i]==null) { //非null才赋值 Scanner input = new Scanner(System.in); System.out.println("请输入需注册的账号"); usr[i] = input.nextLine(); System.out.println("请输入需注册的密码"); pwd[i] = input.nextInt(); flag1=true; break; //赋值一次才退出循环 } } if(flag1==false){ System.out.println("用户已满,无法进行输入!!!"); } } public static void signIn() { //登陆 Scanner input = new Scanner(System.in); System.out.println("请输入您的的账号"); String user = input.nextLine(); System.out.println("请输入您的的密码"); int password = input.nextInt(); for (int i = 0; i < usr.length; i++) { if (user.equals(usr[i]) && pwd[i]==password) { //账号密码一致才调用studentMenu() studentMenu(); return; //studentMenu()返回之后,再返回到上一级菜单 } } System.out.println("账号密码错误!!!"); } public static void studentMenu() { // 学生信息菜单 while (true) { System.out.print("A.新增学生信息 "); System.out.print("B.修改学生信息 "); System.out.print("C.删除学生信息 "); System.out.print("D.查询学生信息 "); System.out.println("E.退出 "); Scanner input=new Scanner(System.in); System.out.println("请输入操作:"); String operate =input.nextLine(); switch (operate) { //判断操作 case "A": case "a": addGrade(); break; case "B": case "b": fixGrade(); break; case "C": case "c": deleteGrade(); break; case "D": case "d": scanGrade(); break; case "E": case "e": return; default: System.out.println("操作错误,请重新输入指令!!!"); break; } } } public static void addGrade() { // 新增学生分数信息 String flag = null; boolean flag1 = false; for (int i = 0; i < name.length; i++) { if (name[i]==null) { //非null才赋值 Scanner input = new Scanner(System.in); System.out.println("请输入学生姓名"); name[i] = input.nextLine(); System.out.println("请输入学生成绩"); grade[i] = input.nextInt(); flag1=true; Scanner input1 = new Scanner(System.in); //每循环一次询问是否继续或中断 System.out.println("中断新增请输 1 ,否则输入其他数"); flag = input1.nextLine(); if (flag.equals("1")) { break; } } } if(flag1==false){ //提示是否能够继续输入 System.out.println("用户已满,无法进行输入!!!"); } } public static void fixGrade() { // 修改学生分数信息 String flag = null; while (true) { boolean flag1 = false; Scanner input = new Scanner(System.in); System.out.println("请输入需修改的学生姓名"); String name1 = input.nextLine(); System.out.println("请输入学生成绩修改为多少"); int grade1 = input.nextInt(); for (int i = 0; i < name.length; i++) { //修改对应名字的对应的成绩 if(name1.equals(name[i])){ grade[i]=grade1; flag1=true; } } if(flag1==false){ System.out.println("无法查找到此名字!!!"); } Scanner input1 = new Scanner(System.in); //每循环一次询问是否继续或中断 System.out.println("中断修改请输 1 ,否则输入其他数"); flag = input1.nextLine(); if (flag.equals("1")) { break; } } } public static void deleteGrade() { // 删除学生分数信息 String flag = null; String [] nameTemp= new String [name.length]; int [] gradeTemp= new int [grade.length]; int index=0; while (true) { boolean flag1=false; Scanner input = new Scanner(System.in); System.out.println("请输入需删除的学生姓名"); String name1 = input.nextLine(); for (int i = 0; i < name.length; i++) { //将对应的名字和成绩置空 if(name1.equals(name[i])){ name[i]=null; grade[i]=0; flag1=true; } } if(flag1==false){ //提示输入姓名是否错误 System.out.println("无法查找到此名字!!!"); } Scanner input1 = new Scanner(System.in); //每循环一次询问是否继续或中断 System.out.println("中断修改请输 1 ,否则输入其他数"); flag = input1.nextLine(); if (flag.equals("1")) { break; } } for (int i = 0; i < name.length; i++) { //将数组name和grade非空元素赋给Temp if (name[i]!=null) { nameTemp[index]=name[i]; gradeTemp[index]=grade[i]; index++; } } for (int i = 0; i < name.length; i++) { //将Temp全部元素赋给数组name和grade name[i]=nameTemp[i]; grade[i]=gradeTemp[i]; } } public static void scanGrade() { // 查询学生信息 while (true) { System.out.print("A.查询学生分数 "); System.out.print("B.查询所有学生分数 "); System.out.println("C.返回上一级 "); Scanner input=new Scanner(System.in); System.out.println("请输入操作:"); String operate =input.nextLine(); switch (operate) { //判断操作 case "A": case "a": scanOne(); break; case "B": case "b": scanAll(); break; case "C": case "c": return; default: System.out.println("操作错误,系统返回上级菜单!!!"); break; } } } public static void scanOne() { // 查询学生分数 boolean flag1 =false; Scanner input=new Scanner(System.in); System.out.println("请输入要查询的姓名"); String name1 =input.nextLine(); for (int i = 0; i < name.length; i++) { //打印对应名字对应的分数 if (name1.equals(name[i]) ) { System.out.print("姓名:"+name[i]+" "); System.out.println("成绩:"+grade[i]); flag1=true; } } if(flag1==false){ //提示输入姓名是否错误 System.out.println("无法查找到此名字!!!"); } } public static void scanAll() { // 查询所有学生分数 for (int i = 0; i < grade.length; i++) { //遍历 System.out.print("姓名:"+name[i]+" "); System.out.println("成绩:"+grade[i]); } } }

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/zzdjwj.html