国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > Java > 正文

java學生信息管理系統設計與實現

2024-07-13 10:16:45
字體:
來源:轉載
供稿:網友

閑暇之余用JAVA寫了個學生信息的管理系統,由于博主還是萌新,代碼難免有冗余和錯誤的地方,如果您發現有什么不足之處或者錯誤,請留言。博主會盡量回復。

需求分析

一個學生信息管理系統應該包含這些內容:

java,學生信息管理系統,java學生管理系統,java信息管理系統,java管理系統

教師頁面

在教師頁面應該包含:

java,學生信息管理系統,java學生管理系統,java信息管理系統,java管理系統

學生頁面

在教學生頁面應該包含:

java,學生信息管理系統,java學生管理系統,java信息管理系統,java管理系統

包含的類

根據分析,我們的學生信息系統應該包含三個類:

java,學生信息管理系統,java學生管理系統,java信息管理系統,java管理系統

代碼

學生類

Student.java

 

package com.gcl;import com.sun.org.glassfish.external.statistics.AverageRangeStatistic;import java.util.Scanner;/** * Created by GCL on 2017/4/22. */public class Student{ private int number;         //學號 private String name;        //姓名 private int age;         //年齡 private double grade[]=new double[100];    //各科分數 private String project[]=new String[100];   //各科名稱 private double average;       //平均分 private int count;         //科目數量 public void setNumber(int num) {  this.number=num; } public int getNumber() {  return number; } public void setName(String name) {  this.name=name; } public String getName() {  return name; } public void setAge(int age) {  this.age=age; } public int getAge() {  return age; } public void setGrade(double a[]) {  System.arraycopy(a, 0, grade, 0, a.length); } public double getGrade(int i) {  return grade[i]; } public void setProject(String a[]) {  System.arraycopy(a,0,project,0,a.length);  this.count=a.length; } public String getProject(int i) {  return project[i]; } public void setAverage(int len) {  double sum=0;  int i=0;  for (;i<len;i++)  {   sum+=grade[i];  }  this.average=sum/(i*1.0); } public double getAverage() {  return average; } public int getCount() {  return count; }}

賬號密碼類

Imfomation .java

 

package com.gcl;/** * Created by GCL on 2017/5/6. */public class Imfomation { private String code; private String account; public Imfomation(String admin, String s) {  this.account=admin;  this.code=s; } public void setCode(String code) {  this.code=code; } public String getCode() {  return code; } public void setAccont(String account) {  this.account=account; } public String getAccont() {  return account; }}

系統操作類

MAIN.java

 

package com.gcl;import java.util.Objects;import java.util.Scanner;/** * Created by GCL on 2017/5/7. */public class MAIN { private static int m=0;              //科目數量 private static int n=0;              //學生數量 private static String[] a=new String[50]; private static Imfomation ac=new Imfomation("Admin","123456");  //初始化教師賬號密碼 private static Student su[]=new Student[100];        //實例化學生類數組 public static void main(String[] args) {  show();                 //進入系統初始頁面 } //系統初始頁面 private static void show() {  System.out.println("----------歡迎來到學生綜合信息管理系統----------");  System.out.println("-     請先登錄:     -");  System.out.println("-     1.教師登錄     -");  System.out.println("-     2.學生登錄     -");  System.out.println("-     0.退出      -");  System.out.println("------------------------------------------------");  Scanner in=new Scanner(System.in);  int ch=in.nextInt();  if (ch==1) Login(ac);  else if (ch==2) Student();  else if (ch==0) System.exit(0);  else System.exit(1); } //教師登錄頁面 private static void Login(Imfomation ac)          //把ac當作參數傳入 {  Scanner in=new Scanner(System.in);  System.out.println("請輸入賬戶名稱:");  String c=in.nextLine();  if (!Objects.equals(c, ac.getAccont()))  {   System.out.println("賬號不存在!");   MAIN.Login(ac);  }  System.out.println("請輸入密碼:");  String b=in.nextLine();  {   if (!Objects.equals(b, ac.getCode()))   {    System.out.println("密碼錯誤!");    MAIN.Login(ac);   }  }  System.out.println("登錄成功!");  MAIN.Teacher(); } //教師主頁面 private static void Teacher() {  System.out.println("-----------------------------------------------");  System.out.println("-----請選擇你要執行的操作:  ---------------");  System.out.println("-----1.創建學生信息    ---------------");  System.out.println("-----2.查詢學生信息    ---------------");  System.out.println("-----3.顯示學生信息    ---------------");  System.out.println("-----4.刪除學生信息    ---------------");  System.out.println("-----5.修改學生信息    ---------------");  System.out.println("-----6.修改密碼     ---------------");  System.out.println("-----0.退出系統     ---------------");  Scanner ch=new Scanner(System.in);  int c=ch.nextInt();  if (c==1) Create();  else if (c==2) Search(1);  else if (c==3) Show();  else if (c==4) Delete();  else if (c==5) Renew();  else if (c==6) Recode();  else if (c==0) show();  else  {   System.out.println("輸入錯誤!");   Teacher();  } } //學生主頁面 private static void Student() {  System.out.println("-----------------------------------------------");  System.out.println("-----請選擇你要執行的操作:  ---------------");  System.out.println("-----1.查詢學生信息    ---------------");  System.out.println("-----0.退出系統     ---------------");  Scanner In=new Scanner(System.in);  int ch=In.nextInt();  if (ch==1) Search(2);  else if (ch==0) show();  else  {   System.out.println("輸入錯誤!");   Student();  } } //創建學生信息 private static void Create() {  String str;  int num1=0,t;  double[] g=new double[50];  while(true)  {   su[n]=new Student();   System.out.println("請輸入學生學號:");   Scanner in=new Scanner(System.in);   num1=in.nextInt();   for (int i=0;i<n;i++)          //檢測學號是否重復   {    while(su[i].getNumber() == num1)    {     System.out.println("已經存在該學號,請重新輸入:");     num1=in.nextInt();    }   }   su[n].setNumber(num1);   System.out.println("請輸入學生姓名:");   str=in.next();   su[n].setName(str);   System.out.println("請輸入學生年齡:");   t=in.nextInt();   su[n].setAge(t);   if (n==0) //在創建第一個學生時,同時創建學科的數量和名稱   {    System.out.println("請輸入N門課");    m=in.nextInt();    System.out.println("請分別輸入"+m+"門科目的名字:");    for(int i=0;i<m;i++)    {     a[i]=in.next();    }   }   su[n].setProject(a);   for (int i=0;i<m;i++)   {    System.out.println("請輸入"+su[n].getProject(i)+"科目的成績:");    g[i]=in.nextInt();   }   su[n].setGrade(g);   su[n].setAverage(m);   n++;   System.out.println("是否繼續添加?(是/Y,否/N)");   String cho=in.next();   char ch=cho.charAt(0);   if (ch=='N'||ch=='n')    Teacher();  //返回教師主頁面   while(ch!='N'&&ch!='n'&&ch!='Y'&&ch!='y')   {    System.out.println("輸入無效,請重新輸入:");    cho=in.next();    ch=cho.charAt(0);   }  } } //展示學生信息 private static void Show() {  System.out.println("學生信息如下:");  for (int i=0;i<n;i++)  {   System.out.println("第"+i+"名學生:");   System.out.println("學號:"+su[i].getNumber()+"/t姓名:"+su[i].getName()+"/t年齡:"+su[i].getAge());   System.out.println("該學生各科成績為:");   for (int j=0;j<m;j++)   {    System.out.println(su[i].getProject(j)+":/t"+su[i].getGrade(j));   }   System.out.println("該學生平均分為:"+su[i].getAverage());  }  System.out.println("輸入任意值返回主菜單");  Scanner in=new Scanner(System.in);  in.next();  Teacher(); } //搜索學生信息,參數是用來判斷訪問該函數的是學生還是老師 private static void Search(int jud) {  System.out.println("----------------------");  System.out.println("----請選擇搜索方式----"); //選擇搜索方式  System.out.println("----1.按學號搜索 ----");  System.out.println("----2.按姓名搜索 ----");  System.out.println("----0.返回主菜單 ----");  System.out.println("----------------------");  Scanner In=new Scanner(System.in);  int ch=In.nextInt();  boolean temp=false;  if (ch==1)  {   System.out.println("請輸入學號:");   int nu=In.nextInt();   for (int i=0;i<n;i++)   {    if (su[i].getNumber()==nu)    {     System.out.println("尋找成功");     System.out.println("學號:"+su[i].getNumber()+"/t姓名:"+su[i].getName()+"/t年齡:"+su[i].getAge());     System.out.println("該學生各科成績為:");     for (int j=0;j<m;j++)     {      System.out.println(su[i].getProject(j)+":/t"+su[i].getGrade(j));     }     System.out.println("該學生平均分為:"+su[i].getAverage());     System.out.println("輸入任意值返回主菜單");     Scanner in=new Scanner(System.in);     in.next();     if (jud==1) //如果是老師訪問,返回Teacher()      Teacher();     Student();  //否則返回Student()    }   }   System.out.println("沒有找到該學生,即將返回");   if (jud==1)    Teacher();   Student();  }  else if (ch==2)  {   System.out.println("請輸入姓名:");   String na=In.next();   for (int i=0;i<n;i++)   {    if (Objects.equals(su[i].getName(), na))    {     System.out.println("尋找成功");     System.out.println("學號:"+su[i].getNumber()+"/t姓名:"+su[i].getName()+"/t年齡:"+su[i].getAge());     System.out.println("該學生各科成績為:");     for (int j=0;j<m;j++)     {      System.out.println(su[i].getProject(j)+":/t"+su[i].getGrade(j));     }     System.out.println("該學生平均分為:"+su[i].getAverage());     temp=true;    }   }   if (temp)   {    System.out.println("輸入任意值返回主菜單");    Scanner in=new Scanner(System.in);    in.next();    if (jud==1)     Teacher();    Student();   }   else   {    System.out.println("沒有找到該學生,即將返回");    if (jud==1)     Teacher();    Student();   }  }  else if (ch==0)  {   if (jud==1)    Teacher();   Student();  }  else  {   System.out.println("輸入錯誤!");   Search(jud);  } } //刪除學生信息 private static void Delete() {  System.out.println("請輸入要刪除的學生的學號:");  Scanner In=new Scanner(System.in);  int num=In.nextInt();  boolean temp=true; //判斷是否找到該學生  int tem=0,i=0;  for (i=0;i<n;i++)  {   if (su[i].getNumber()==num)   {    temp=false;    tem=i; //用tem記錄該學生的位置    break;   }  }  if (temp)  {   System.out.println("未找到該學生信息");   System.out.println("輸入任意值返回主菜單");   Scanner in=new Scanner(System.in);   in.next();   Teacher();  }  else  {   System.out.println("你要刪除的學生信息:");   System.out.println("學號:"+su[tem].getNumber()+"/t姓名:"+su[tem].getName()+"/t年齡:"+su[tem].getAge());   System.out.println("該學生各科成績為:");   for (int j=0;j<m;j++)   {    System.out.println(su[tem].getProject(j)+":/t"+su[tem].getGrade(j));   }   System.out.println("該學生平均分為:"+su[tem].getAverage());   System.out.println("你確定要刪除該學生嗎?(是/Y,否/N)");   String ch=In.next();   char se=ch.charAt(0);   while(se!='N'&&se!='n'&&se!='Y'&&se!='y')   {    System.out.println("輸入無效,請重新輸入:");    ch=In.next();    se=ch.charAt(0);   }   if (se=='N'||se=='n') {    System.out.println("返回主菜單");    Teacher();   }   if (se=='Y'||se=='y') //通過線性表的刪除操作來刪除該學生的信息   {    for (i=tem;i<n-1;i++)    {     su[i]=su[i+1];    }    n--;    System.out.println("學生信息刪除成功!");    System.out.println("輸入任意值返回主菜單");    Scanner in=new Scanner(System.in);    in.next();    Teacher();   }  } } //修改學生信息 private static void Renew() {  System.out.println("請輸入要修改的學生的學號:");  Scanner In=new Scanner(System.in);  int num=In.nextInt();  boolean temp=true;  int tem=0,i=0;  for (i=0;i<n;i++)  {   if (su[i].getNumber()==num)   {    temp=false;    tem=i;    break;   }  }  if (temp)  {   System.out.println("未找到該學生信息");   System.out.println("輸入任意值返回主菜單");   Scanner in=new Scanner(System.in);   in.next();   Teacher();  }  else  {   System.out.println("你要修改的學生信息如下:");   System.out.println("你要修改的學生信息:");   System.out.println("學號:"+su[tem].getNumber()+"/t姓名:"+su[tem].getName()+"/t年齡:"+su[tem].getAge());   System.out.println("該學生各科成績為:");   for (int j=0;j<m;j++)   {    System.out.println(su[tem].getProject(j)+":/t"+su[tem].getGrade(j));   }   System.out.println("該學生平均分為:"+su[tem].getAverage());   System.out.println("你確定要修改該學生嗎?(是/Y,否/N)");   String ch=In.next();   char se=ch.charAt(0);   while(se!='N'&&se!='n'&&se!='Y'&&se!='y')   {    System.out.println("輸入無效,請重新輸入:");    ch=In.next();    se=ch.charAt(0);   }   if (se=='N'||se=='n')   {    System.out.println("返回主菜單");    Teacher();   }   if (se=='Y'||se=='y')   {    double[] g=new double[50];    System.out.println("請選擇修改的內容:");            //選擇修改哪些內容    System.out.println("---1.修改姓名----");    System.out.println("---2.修改年齡----");    System.out.println("---3.修改成績----");    System.out.println("---0.返回主菜單--");    int cho=In.nextInt();    if (cho==1)    {     System.out.println("請輸入姓名:");     String name=In.next();     su[tem].setName(name);     System.out.println("修改成功!");     System.out.println("還要繼續修改嗎?(是/Y,否/N)");     ch=In.next();     se=ch.charAt(0);     while (se!='N'&&se!='n'&&se!='Y'&&se!='y')     {      System.out.println("輸入無效,請重新輸入:");      ch=In.next();      se=ch.charAt(0);     }     if (se=='N'||se=='n')     {      System.out.println("返回主菜單");      Teacher();     }     if (se=='y'||se=='Y')     {      Renew();     }    }    else if (cho==2)    {     System.out.println("請輸入年齡:");     int ag=In.nextInt();     su[tem].setAge(ag);     System.out.println("修改成功!");     System.out.println("還要繼續修改嗎?(是/Y,否/N)");     ch=In.next();     se=ch.charAt(0);     while (se!='N'&&se!='n'&&se!='Y'&&se!='y')     {      System.out.println("輸入無效,請重新輸入:");      ch=In.next();      se=ch.charAt(0);     }     if (se=='N'||se=='n')     {      System.out.println("返回主菜單");      Teacher();     }     if (se=='y'||se=='Y')     {      Renew();     }    }    else if (cho==3)    {     for (int j=0;j<m;j++)     {      System.out.println("請輸入"+su[tem].getProject(j)+"科目的成績:");      g[j]=In.nextInt();     }     su[tem].setGrade(g);     su[tem].setAverage(m);     System.out.println("修改成功!");     System.out.println("還要繼續修改嗎?(是/Y,否/N)");     ch=In.next();     se=ch.charAt(0);     while (se!='N'&&se!='n'&&se!='Y'&&se!='y')     {      System.out.println("輸入無效,請重新輸入:");      ch=In.next();      se=ch.charAt(0);     }     if (se=='N'||se=='n')     {      System.out.println("返回主菜單");      Teacher();     }     if (se=='y'||se=='Y')     {      Renew();     }    }    else if (cho==0)    {     Teacher();    }    else    {     System.out.println("輸入無效!");     Renew();    }   }  } } //修改教師的密碼 private static void Recode() {  System.out.println("請輸入原來的密碼:");  Scanner In=new Scanner(System.in);  String code =In.nextLine();  if (!Objects.equals(code, ac.getCode()))  {   System.out.println("密碼輸入錯誤!");   Teacher();  }  System.out.println("請輸入新密碼:"); //要求輸入兩次新密碼  String co1=In.nextLine();  System.out.println("請再次輸入新密碼:");  String co2=In.nextLine();  if (!Objects.equals(co1, co2))  {   System.out.println("兩次輸入密碼不一致!");   System.out.println("即將返回主界面");   Teacher();  }  else  {   ac.setCode(co1);   System.out.println("密碼修改成功!");   System.out.println("輸入任意值返回主菜單");   Scanner in=new Scanner(System.in);   in.next();   Teacher();  } }}

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持VeVb武林網。


注:相關教程知識閱讀請移步到JAVA教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 玛多县| 揭西县| 商洛市| 星座| 简阳市| 兰溪市| 黄龙县| 敦化市| 乌海市| 富源县| 莱西市| 奇台县| 平陆县| 岳西县| 天门市| 长寿区| 元阳县| 通化市| 金沙县| 邯郸市| 保靖县| 江川县| 七台河市| 恩施市| 新郑市| 泰安市| 大石桥市| 双辽市| 江川县| 丁青县| 南丰县| 沿河| 南皮县| 白沙| 海安县| 岗巴县| 绍兴市| 屏东县| 南陵县| 荆门市| 荔浦县|