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

学生管理系统

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

一、首先建立学生类,用于生成学生对象

1 package Student_Manage;
2
3 public class Student {
4     public String name ;
5     public int score ;
6     public int code ;
7 }

二、编写管理系统

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

学生管理系统(使用对象)的相关文章

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

学生管理系统 要求实现登陆,学生信息的添加.显示,删除,修改,查询,排序,退出功能. 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];//学生

学生管理系统(jsp+mysql)

1.实验目的 通过使用 Java Web 技术设计一个简单的数据库管理系统,了解前台页面和后 台编辑页面的区别,掌握 Web 服务器与 MySQL 数据库的连接和数据库操作的方 法,掌握使用 JSP 编写后台代码的方法. 2.实验内容和要求 开发一个学生管理系统,完成学生信息的查看.增加.删除和修改等功能. 对于客户端增加和修改信息页面,要使用 javascript 进行必要的数据的非空验证. 自行添加一些 css,使得页面和字体更加美观. 3.实验步骤及实验结果 (1)打开 MySQL,新建一

用链表写的学生管理系统 成绩的录入与查询都已经是实现了

#define _CRT_SECURE_NO_WARNINGS #include <stdio.h> #include <stdlib.h> #include <string.h> typedef struct teacher { char name[32]; int math; int english; int data; struct Node *next; }SLIST; int Creat_SList(); int SList_Print(); int SLis

c语言学生管理系统链表(dev vs2012下可以运行)

struct student { char name[10]; char sex[5]; long int num;//学号 int xuhao; int age; float score[3]; float averange; char DJ;//存放等级哦 struct student *next; };//定义结构体变量保存 名字 性别 年龄 成绩] 结构体声明 int n;//存放学生人数 int man;//存放统计的男生数 float JY(float a)//校验成绩使范围0-10

Mysql学生管理系统:表的建立,外键一对多,多对多关系,中间关联表的建立

学生管理系统 管理员注册/登录/注销 注册班级(班级详细信息) 注册学生信息 查看班级信息/查看老师资料 教师注册/注销  查看教师资料  查看学生资料  根据名称/班级/ 查看学生详细信息--支持模糊 注册科目 管理员(admini) ad_id(管理员id)     ad_number(管理员账号) ad_pass(管理员密码)    ad_yn(管理员是否禁用) create table admini( ad_id int PRIMARY KEY AUTO_INCREMENT,-- 主键自

微信南通大学教务学生管理系统_用户体验

刚开始我还没关注南通大学教务学生管理系统的时候都是经常用电脑登陆然后上去查课表或者成绩什么的,但是用电脑也挺不方便的,因为每次都输用户名和密码,挺烦的.后来关注微信之后觉得还挺方便的,(图片是盗用同学的,因为我的手机屏幕没那么大,不能一下子把整张图一次性截下),但是我想说的他的缺点也就是它的一张图片实在太长了,让人看的眼花,一下子不能马上找到自己想查的是什么,而且我们要查的内容都是通过输入字母和数字组成的,如果一下子记不住字母和数字,还要往上翻页去看一眼什么字母或者数字,才能继续输入.(我不知道

精美学生管理系统

半个学期即将完美结束,精美的学生管理系统也终于亮相啦,哈哈! 话不多说,切入正题. 首先,要了解完成学生管理系统的步骤: 总共有几个模块,我就逐一讲解: 一:完成登录页面模块 判断“登录”是否成功的代码: 1 private void btnLogin_Click(object sender, EventArgs e) 2 { 3 string str = DBHelper.str; 4 SqlConnection con = new SqlConnection(str); 5 string s

【php】1、学生管理系统-欢迎界面

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-

简单的学生管理系统

简单的学生管理系统 一,主要功能: 1,添加学生信息: 2,添加的学生信息显示在线型布局中: 3,把学生信息保存在xml文件中: 4,把保存在mxl中的学生信息取出来解析显示在界面: 二,主要知识点: 1,layout_weight的使用: 2,pull解析xml文件,xml序列化: 3,保存数据到sd卡: 4,动态添加控件刷新界面: 三,界面原型如下图: 四,代码展示: 1,界面xml文件,activity_main.xml <LinearLayout xmlns:android="ht