学生管理系统 (未使用对象)

学生管理系统

要求实现登陆,学生信息的添加、显示,删除,修改,查询,排序,退出功能。

 

  1 package Student_Manage;
  2 import javax.swing.JOptionPane;
  3 
  4 public class Manage_NOTUseClass {
  5     
  6     
  7     public static String [] name = new String [20];//学生姓名数组
  8     public static int [] card = new int [20];//学生学号数组
  9     public static int [] score = new int [20]; //学生成绩数组
 10     public static int number = 0;//学生数目
 11     
 12     public static void main(String[] args) {
 13         // 学生管理系统
 14         //要求实现登陆,学生信息的添加、显示, 删除,修改,查询,排序,退出功能
 15         /**欢迎光临界面*/
 16         JOptionPane.showMessageDialog(null, "欢迎光临!");
 17         
 18         /**登陆用户名、密码验证*/
 19         String user = "111" ;
 20         String pwd = "222";
 21         for (int i = 0;i<3 ; i++){
 22             String in_user = JOptionPane.showInputDialog(null , "用户名:");
 23             String in_pwd = JOptionPane.showInputDialog(null , "密码:");
 24             if ( in_user.equals(user) && in_pwd.equals(pwd)){//判定用户名和密码是否正确
 25                 break ;
 26             }else {
 27                 JOptionPane.showMessageDialog(null, "用户名或密码错误!");
 28                 if (i==2){
 29                     JOptionPane.showMessageDialog(null, "非法用户!");
 30                     System.exit(0);
 31                 }
 32             }
 33         }
 34         
 35         /**菜单选项*/
 36         while (true){
 37             int choose_num = Integer.parseInt(JOptionPane.showInputDialog(null , "1、添加\n2、显示\n3、删除\n4、修改\n5、查询\n6、排序\n7、退出"));
 38             switch (choose_num){
 39                 case 1 : 
 40                     add() ; 
 41                     break ;
 42                 case 2 : 
 43                     show(); 
 44                     break ;
 45                 case 3 : 
 46                     del() ; 
 47                     break ;
 48                 case 4 : 
 49                     repair(); 
 50                     break ;
 51                 case 5 : 
 52                     check(); 
 53                     break ;
 54                 case 6 : 
 55                     sort(); 
 56                     break ;
 57                 case 7 : 
 58                     JOptionPane.showMessageDialog(null, "系统已退出!");
 59                     System.exit(0);
 60                     break ;
 61                 default : JOptionPane.showMessageDialog(null, "无此选项,请重新选择!");break ;
 62             }
 63         }
 64     }
 65     /**添加一个学生*/
 66     public static void add(){
 67         name [number] = JOptionPane.showInputDialog(null , "请输入姓名:");
 68         card [number] = Integer.parseInt(JOptionPane.showInputDialog(null, "请输入学号:"));
 69         score [number] = Integer.parseInt(JOptionPane.showInputDialog(null, "请输入成绩:"));
 70         number ++;
 71     }
 72     /**排序*/
 73     public static void sort() {
 74             for (int i =0;i < number ; i++){
 75                 for (int j = i; j<number;j++){
 76                     int temp = 0 ;
 77                     String s = "";
 78                     if (score [i] < score [j]){
 79                         s = name [i] ;
 80                         name [i]  = name [j] ;
 81                         name[j] = s ;
 82                         
 83                         temp = card [i] ;
 84                         card [i]   = card [j]  ;
 85                         card [j]  = temp ;
 86                         
 87                         temp = score[i] ;
 88                         score [i]   = score [j]  ;
 89                         score [j]  = temp ;
 90                     }
 91                 }
 92             }
 93             JOptionPane.showMessageDialog(null, "排序成功!");    
 94     }
 95     /**显示*/
 96     public static void show(){
 97         String s = "学号"+"    "+"姓名"+"    "+"成绩"+"\n";
 98         for (int i = 0 ;i< number ;i++){
 99             s+=card [i] + "    "+ name [i]+"    "+ score [i]+"\n";
100         }
101         JOptionPane.showMessageDialog(null, s);
102     }
103     /**删除*/
104     public static void del(){
105         int index = findByName();
106         if (index !=-1){
107             //方法一:将最后位置的一个元素放在被删除元素的位置
108 //        name [index] = name[ number-1];
109 //        card [index] =card[ number-1];
110 //        score [index] = score[ number-1];
111 //        number--;
112             //方法二 :连续将后一个元素填补至前一个元素
113             for (int i = index; i <number ; i++){
114                 name [i] = name [i+1];
115                 card [i] = card [i+1];
116                 score [i] = score [i+1] ;
117             }
118             number--;
119         JOptionPane.showMessageDialog(null, "删除成功!");    
120         }
121     }
122     /**修改*/
123     public static void repair(){
124         int index = findByName();
125         if (index !=-1){
126             name [index] =JOptionPane.showInputDialog(null , "请输入新的名字:");
127             card [index] = Integer.parseInt(JOptionPane.showInputDialog(null , "请输入该学生的学号"));
128             score [index] = Integer.parseInt(JOptionPane.showInputDialog(null , "请输入该学生的成绩"));
129             JOptionPane.showMessageDialog(null, "修改成功!");
130         }
131     }
132     /**查询*/
133     public static void check(){
134         int index  =findByName();
135         if (index !=-1){
136         JOptionPane.showMessageDialog(null,name[index]+"\n学号:" +card[index]+"\n成绩:"+score [index]);
137         }
138     }
139     /**代码重用---查找*/
140     public static int findByName (){
141         int index = -1 ;
142         String check_name = JOptionPane.showInputDialog(null,"请输入要查询的名字:");
143         for (int i = 0; i< number ;i++){
144             if (check_name.equals(name [i])){
145                 return i ;
146             }
147         }
148         if (index == -1){
149             JOptionPane.showMessageDialog(null, "查无此人!");
150         }
151         return index ;
152     }
153 }

 

posted @ 2016-09-08 13:59  爱吃胡豆  阅读(234)  评论(0编辑  收藏  举报