学生管理系统

学生管理系统
要求实现登陆,学生信息的添加、显示,删除,修改,查询,排序,退出功能。
实现流程:
1、 弹出欢迎界面

2、 登陆业务:
要求用户输入用户名和密码


如果用户名和密码输入错误,给予提示,并让用户重新输入。

如果用户三次以上没有输入正确信息,提示“非法用户”,并结束程序


如果登陆成功。进入学生管理系统的主界面


3、 选择操作。
根据用户选择的选项,分别执行添加、删除、修改、查询,几个功能模块。要求使用函数调用实现。分别建立三个数组,分别保存学号、姓名、成绩。同时建立一个变量保存已有学生的人数。
4、 添加
分别提示用户输入学号、姓名、成绩,分别保存在三个数组中,并将现在学生的人数加一。



5、 显示
当用户添加完成后,回到主界面,选择显示选项后,显示现在所有学生信息。

6、 删除
提示用户输入要删除学生的姓名

如果没有该学生,给予提示。

完成删除操作,在现有的数组中移除数据。并显示删除后的结果。

7、 查找
提示用户输入要查找学生的姓名

完成查找后,显示查找后的结果

如果没有找到,给予提示

8、 修改
提示用户输入要修改学生的姓名

如果没有该学生,给予提示。


找到该学生后,提示用户重新输入学号、姓名、成绩






完成数据录入后,显示修改后的结果

9、 排序
按成绩降序显示输出
10、 退出

选择退出后,结束程序



import javax.swing.JOptionPane;

public class MIS {
public static int student [] = new int[100];
public static String name [] = new String[100];
public static int grade [] = new int[100];


public static int number = 0 ;

public static void main(String[] args) {

JOptionPane.showMessageDialog(null, "欢迎光临");
boolean islogon = logon();
if(islogon==false){
JOptionPane.showMessageDialog(null,"非法用户");
System.exit(0);
}
while(true){
String str = JOptionPane.showInputDialog(null,"1、添加\n 2、显示 \n 3、删除\n 4、查找\n 5、修改\n 6、排序\n 7、退出");
int str1 = Integer.parseInt(str);
switch(str1){
case 1:
add();break;
case 2:
show();break;
case 3:
del();break;
case 4:
find();break;
case 5:
mod();break;
case 6:
sort();break;
case 7:
System.exit(0);break;
default:
JOptionPane.showMessageDialog(null,"请输入1-7");

}
}



}
public static void sort() {
for(int i = 0; i < number; i++){
for(int j = i+1; j < number; j++){
if(grade[i]<grade[j]){
int num1 = student[i];
student[i] = student[j];
student[j] = num1;
String num2 = name[i];
name[i] = name[j];
name[j] = num2;
int num3 = grade[i];
grade[i] = grade[j];
grade[j] = num3;
}
}
}
show();
}

/*寻找姓名在该姓名下的下标,如果没有找到返回-1
*@return
*
**/
public static int findName(){
String nameStr = JOptionPane.showInputDialog(null,"请输入姓名");
for(int i = 0 ; i <number;i++ ){
if(nameStr.equals(name[i])){
return i;
}
}
JOptionPane.showMessageDialog(null,"查无此人");

return -1;
}
public static void mod() {
int index = findName();
if(index!=-1){
String newstudent = JOptionPane.showInputDialog(null,"请重新输入学号");
String newname = JOptionPane.showInputDialog(null,"请重新输入姓名");
String newgrade = JOptionPane.showInputDialog(null,"请重新输入成绩");
student[index] = Integer.parseInt(newstudent);
name[index] = newname;
grade[index] = Integer.parseInt(newgrade);
show();
}
}
public static void find() {
int index = findName();
if(index!=-1){
JOptionPane.showMessageDialog(null,"学号为:"+student[index]+" "+"姓名为:"+name[index]+" "+"成绩为:"+grade[index]);
}
}

public static void del() {
int index = findName();
if(index!=-1){
for(int i = index ; i < number ; i++){
student[i] = student[i+1];
name[i] = name[i+1];
grade[i] = grade[i+1];

}
number--;
show();
}
}
public static void show() {
String str = "学号 姓名 成绩 \n";
for(int i = 0 ; i <number; i++){
str += student[i]+" "+name[i]+" "+grade[i]+"\n";

}JOptionPane.showMessageDialog(null, str);


}
public static void add() {
String student1 = JOptionPane.showInputDialog(null,"请输入学号");
String name1 = JOptionPane.showInputDialog(null,"请输入姓名");
String grade1 = JOptionPane.showInputDialog(null,"请输入成绩");
student [number] = Integer.parseInt(student1);
name [number] = name1;
grade[number] = Integer.parseInt(grade1);
number++;

}
public static boolean logon(){
for(int i = 3 ; i > 0 ; i--){
String username = JOptionPane.showInputDialog(null,"请输入用户名");
String userpaw = JOptionPane.showInputDialog(null,"请输入密码");
if("xbj123".equals(username)&& "123".equals(userpaw)){
JOptionPane.showMessageDialog(null,"登录成功");
return true;
}
else{


JOptionPane.showMessageDialog(null,"用户名和密码错误");
}
}return false;
}
}

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值