资源描述
package com.qx;
import java.util.Scanner;
public class StudentManagerMethod {
/**
* 学生信息管理系统(简易,无数据库)
* 用户名为:2010031
* 密码为:2010031
*/
//定义一个二维String类型数组,来保存学生的信息
static String[][] students=new String[100][4];
static int count=4;//存放当前的学生人数
//打印一级菜单
public static void printFirstMenu()
{
//输出一级菜单
System.out.println("*************欢迎使用学生信息管理系统(简易版)***********");
System.out.println("********************************************************");
System.out.println(" 1.登陆 ");
System.out.println();
System.out.println(" 2.退出 ");
System.out.println("********************************************************");
System.out.print("请选择要执行的操作:");
}
//打印二级菜单
public static void printSecondMenu()
{
//输出二级菜单
System.out.println("*************欢迎使用学生信息管理系统(简易版)***********");
System.out.println("********************************************************");
System.out.println(" 1.查看学生信息 ");
System.out.println();
System.out.println(" 2.添加学生信息 ");
System.out.println();
System.out.println(" 3.修改学生信息 ");
System.out.println();
System.out.println(" 4.查询学生信息 ");
System.out.println();
System.out.println(" 5.删除学生信息 ");
System.out.println();
System.out.println(" 6.退 出 ");
System.out.println("********************************************************");
System.out.print("请选择要执行的操作:");
}
//打印三级菜单
public static void printThirdMenu()
{
//输出第三级菜单
System.out.println("*************欢迎使用学生信息管理系统(简易版)***********");
System.out.println("********************************************************");
System.out.println(" 1.按学生学号查询 ");
System.out.println();
System.out.println(" 2.按学生姓名查询 ");
System.out.println();
System.out.println(" 3.按学生年龄查询 ");
System.out.println();
System.out.println(" 4.按学生职务查询 ");
System.out.println();
System.out.println(" 5.退 出 ");
System.out.println("********************************************************");
System.out.print("请选择要执行的操作:");
}
//定义初始化数据
public static void initStudent()
{
String[] s1={"s001","张三","21","学生"};
String[] s2={"s002","李四","22","班长"};
String[] s3={"s003","王五","23","干部"};
String[] s4={"s004","张伟","28","旁听"};
students[0]=s1;
students[1]=s2;
students[2]=s3;
students[3]=s4;
}
//查看学生信息
public static void lookStudent()
{
for(int i=0;i<count;i++)
{
for(int j=0;j<students[i].length;j++)
{
System.out.print(students[i][j]+"\t");
}
System.out.println();
}
}
//添加学生信息
public static void addStudent()
{
Scanner scanner=new Scanner(System.in);
System.out.print("请输入新的学号:");
String stuNo2=scanner.nextLine();
scanner=new Scanner(System.in);
System.out.print("请输入新的姓名:");
String stuName2=scanner.nextLine();
scanner=new Scanner(System.in);
System.out.print("请输入新的年龄:");
String stuAge2=scanner.nextLine();
scanner=new Scanner(System.in);
System.out.print("请输入新的职务:");
String stuTitle2=scanner.nextLine();
//将用户输入的新学生信息构造一个新的String数组
String[] tmpStu2={stuNo2,stuName2,stuAge2,stuTitle2};
//将此新学生添加到二维数组中
students[count]=tmpStu2;
count++;
}
//修改学生信息
public static void modifyStudent()
{
//按学号查找对应的学生信息
System.out.print("请输入需要修改的学生的学号:");
Scanner scanner = new Scanner(System.in);
String changeNo=scanner.nextLine();
int changeCount=0;//标记,作为所找学生的标记
boolean changeFlag=false;//标记,决定是否修改
for(int i=0;i<count;i++)
{
if(students[i][0].equals(changeNo))
{
System.out.println("找到,信息如下:");
for(int j=0;j<students[i].length;j++)
{
System.out.print(students[i][j]+"\t");
}
changeCount=i;
changeFlag=true;
break;
}
}
System.out.println();
//修改
if(changeFlag)
{
scanner=new Scanner(System.in);
System.out.print("请输入新的学号:");
String stuNo3=scanner.nextLine();
scanner=new Scanner(System.in);
System.out.print("请输入新的姓名:");
String stuName3=scanner.nextLine();
scanner=new Scanner(System.in);
System.out.print("请输入新的年龄:");
String stuAge3=scanner.nextLine();
scanner=new Scanner(System.in);
System.out.print("请输入新的职务:");
String stuTitle3=scanner.nextLine();
String[] tmpStu3={stuNo3,stuName3,stuAge3,stuTitle3};
students[changeCount]=tmpStu3;
//显示修改后的学生信息
System.out.println("修改后的学生信息:");
for(int i=0;i<count;i++)
lookStudent();
}
else
{
System.out.println("没找到!!!请核实输入数据!");
System.out.println();
}
}
//查询学生信息
//按学生学号查询
public static void queryStudentNo()
{
System.out.print("请输入需要查询的学生的学号:");
Scanner scanner = new Scanner(System.in);
String findNo=scanner.nextLine();
boolean findFlag1=true;//标记,用来显示是否找到
for(int i=0;i<count;i++)
{
if(students[i][0].equals(findNo))
{
System.out.println("找到,信息如下:");
for(int j=0;j<students[i].length;j++)
{
System.out.print(students[i][j]+"\t");
}
findFlag1=false;
System.out.println();
break;
}
}
if(findFlag1)
{
System.out.println("抱歉,没有此人!");
System.out.println();
}
}
//按学生姓名查询
public static void queryStudentName()
{
System.out.print("请输入需要查询的学生的姓名:");
Scanner scanner = new Scanner(System.in);
String findName=scanner.nextLine();
boolean findFlag2=true;//标记,用来显示是否找到信息
for(int i=0;i<count;i++)
{
if(students[i][1].equals(findName))
{
System.out.println("找到,信息如下:");
for(int j=0;j<students[i].length;j++)
{
System.out.print(students[i][j]+"\t");
}
findFlag2=false;
System.out.println();
}
if(i==count)
{
break;
}
}
if(findFlag2)
{
System.out.println("抱歉,没有此人!");
System.out.println();
}
}
//按学生年龄查询
public static void queryStudentAge()
{
System.out.print("请输入需要查询的学生的年龄:");
Scanner scanner = new Scanner(System.in);
String findAge=scanner.nextLine();
boolean findFlag3=true;//标记,用来显示是否找到信息
for(int i=0;i<count;i++)
{
if(students[i][2].equals(findAge))
{
System.out.println("找到,信息如下:");
for(int j=0;j<students[i].length;j++)
{
System.out.print(students[i][j]+"\t");
}
findFlag3=false;
System.out.println();
}
if(i==count)
{
break;
}
}
if(findFlag3)
{
System.out.println("抱歉,没有此人!");
System.out.println();
}
}
//按学生职务查询
public static void queryStudentTitle()
{
System.out.print("请输入需要查询的学生的职务:");
Scanner scanner = new Scanner(System.in);
String findTitle=scanner.nextLine();
boolean findFlag4=true;//标记,用来显示是否找到信息
for(int i=0;i<count;i++)
{
if(students[i][3].equals(findTitle))
{
System.out.println("找到,信息如下:");
for(int j=0;j<students[i].length;j++)
{
System.out.print(students[i][j]+"\t");
}
findFlag4=false;
System.out.println();
}
if(i==count)
{
break;
}
}
if(findFlag4)
{
System.out.println("抱歉,没有此人!");
System.out.println();
}
}
//删除学生信息
public static void deleteStudent()
{
//按学号查找对应的学生信息
System.out.print("请输入需要删除的学生的学号:");
Scanner scanner = new Scanner(System.in);
String deleteNo=scanner.nextLine();
int deleteCount=0;//标记,作为所找学生的标记
boolean deleteFlag=false;//标记,决定是否删除
for(int i=0;i<count;i++)
{
if(students[i][0].equals(deleteNo))
{
System.out.println("找到,信息如下:");
for(int j=0;j<students[i].length;j++)
{
System.out.print(students[i][j]+"\t");
}
deleteCount=i;//
deleteFlag=true;
System.out.println();
break;
}
}
//删除
if(deleteFlag)
{
for(int j=deleteCount+1;j<students[count].length;j++)
{
students[deleteCount]=students[j];
deleteCount++;
}
count--;
//显示删除后的学生信息
System.out.println("删除后的学生信息:");
lookStudent();
}
else
{
System.out.println("没找到!!!请核实输入数据!");
System.out.println();
}
}
//验证登录信息
public static boolean verifyStudent()
{
boolean verifyFlag=false;
System.out.print("请输入用户名:");
Scanner scanner=new Scanner(System.in);
String userName=scanner.nextLine();
System.out.print("请输入密码:");
scanner=new Scanner(System.in);
String password=scanner.nextLine();
if("2010031".equals(userName)&&"2010031".equals(password))
{
verifyFlag=true;
}
return verifyFlag;
}
public static void main(String[] args) {//main函数
initStudent();//初始化学生信息数组
Scanner scanner=new Scanner(System.in);
boolean firstFlag=false;//标记位,据此决定是否退出一级菜单
while(true)
{
printFirstMenu();//打印一级菜单
int firstChoice=scanner.nextInt();//接受用户的操作
switch(firstChoice)
{
case 1:
boolean Flag1=verifyStudent();//控制输出二级菜单(验证通过会输出)
if(Flag1)
{
boolean secondFlag=true;//标记位,决定是否退出二级菜单
do{
printSecondMenu();//打印二级菜单
scanner=new Scanner(System.in);
int secondChoice=scanner.nextInt();
switch(secondChoice)
{
case 1://查看学生信息
lookStudent();
System.out.print("输入0返回上一菜单——>:");
scanner = new Scanner(System.in);
int back1=scanner.nextInt();
if(back1==0)
{
break;
}
break;
case 2://添加学生信息
addStudent();
//显示添加后的学生信息
System.out.println("添加后的学生信息:");
for(int i=0;i<count;i++)
{
for(int j=0;j<students[i].length;j++)
{
System.out.print(students[i][j]+"\t");
}
System.out.println();
}
System.out.print("输入0返回上一菜单——>:");
scanner = new Scanner(System.in);
int back2=scanner.nextInt();
if(back2==0)
{
break;
}
break;
case 3://修改学生信息
modifyStudent();
System.out.print("输入0返回上一菜单——>:");
scanner = new Scanner(System.in);
int back3=scanner.nextInt();
if(back3==0)
{
break;
}
break;
case 4://查询学生信息
boolean thirdFlag=false;//标记,决定是否退出第三级菜单
while(true)
{
printThirdMenu();//打印三级菜单
scanner=new Scanner(System.in);
int thirdChoice=scanner.nextInt();
switch(thirdChoice)
{
case 1://按学生学号查询
queryStudentNo();
System.out.print("输入0返回上一菜单——>:");
scanner = new Scanner(System.in);
int back4=scanner.nextInt();
if(back4==0)
{
break;
}
break;
case 2://按学生姓名查询
queryStudentName();
System.out.print("输入0返回上一菜单——>:");
scanner = new Scanner(System.in);
int back5=scanner.nextInt();
if(back5==0)
{
break;
}
break;
case 3://按学生年龄查询
queryStudentAge();
System.out.print("输入0返回上一菜单——>:");
scanner = new Scanner(System.in);
int back6=scanner.nextInt();
if(back6==0)
{
break;
}
break;
case 4://按学生职务查询
queryStudentTitle();
System.out.print("输入0返回上一菜单——>:");
scanner = new Scanner(System.in);
int back7=scanner.nextInt();
if(back7==0)
{
break;
}
break;
case 5://退出第三级菜单
thirdFlag=true;
break;
default:
break;
}
if(thirdFlag)
break;
}
break;
case 5://删除学生信息
deleteStudent();
System.out.print("输入0返回上一菜单——>:");
scanner = new Scanner(System.in);
int back8=scanner.nextInt();
if(back8==0)
{
break;
}
break;
case 6://退出二级菜单
secondFlag=false;
break;
default:
break;
}
}while(secondFlag);
break;
}
else
{
System.out.println("用户名或密码错误");
}
break;
case 2:
firstFlag=true;
break;
default:
break;
}
if(firstFlag)
break;
}
System.out.println("***********************谢谢使用************************");
}
}
展开阅读全文