Java寫學生管理系統

package Homework08;
/*

Student stus[]=new Student[2];
 for (int i=0;i<stus.length;i++){
 stus[i]=new Student();應該寫在循環外面,否則每次都被初始化。
}

*/

import java.util.Scanner;

public class Main {
 public static void main(String[]args){
  
  /**
   * 1:製作一個簡單的學生信息管理系統,通過鍵盤選擇操作進行添加學生(學號,姓名,性別,年齡,成績)的信息,
   *   這些信息通過數組存儲,
   * 2:可以進行查詢某個或全體學生信息
   * 3:修改學生信息
   * 4:刪除學生信息的操作。(要求有一定的優化,例如對用戶輸入信息是否符合要求的處理)。
   */
  Student stus[]=new Student[2];
   for (int i=0;i<stus.length;i++){
    stus[i]=new Student();
   }
    
  while(true){
   System.out.println("--------------------歡迎進入學生管理系統--------------------------");
   System.out.println("1:輸入學生信息");
   System.out.println("2:修改學生信息");
   System.out.println("3:刪除學生信息");
   System.out.println("4:查詢學生信息");
   System.out.println("0:退出系統");
   System.out.println("-----------請輸入選項----------------");
   
   
   Scanner scanner=new Scanner(System.in);
   int m=scanner.nextInt();
   
   
   int js;
  
  switch(m){
  //輸入學生信息
  case 1:
   
  { //輸入學生姓名
   int z=0;
   System.out.println("請您輸入學生信息");
   System.out.println("請您輸入學生姓名:");
   String name=scanner.next();
   stus[z].setName(name);
   //輸入學生學號
   System.out.println("請您輸入學生學號:");
   String stuNum=scanner.next();
   stus[z].setStuNum(stuNum);
   //輸入學生性別
   System.out.println("請您輸入學生性別:");
   String gender=scanner.next();
   stus[z].setGender(gender);
   //輸入學生年齡
   System.out.println("請您輸入學生年齡:");
   int age=scanner.nextInt();
   stus[z].setAge(age);
   
   //輸入學生成績
   System.out.println("請您輸入學生成績:");
   float score=scanner.nextFloat();
   stus[z].setScore(score);
   System.out.println("-----------------輸入結束------------------");
   
   z++;}
   break;
   
  case 2:{ 
   boolean beep=false;//beep確定是否找到學生信息
   System.out.println("請您輸入您要改變的學生的學號:");
   String stuNum4=scanner.next();
   for(int i=0;i<stus.length;i++){
    if(stuNum4.equals(stus[i].getStuNum())){
     //重新輸入學生的姓名
     System.out.println("請您輸入學生姓名");
     String name1=scanner.next();
     stus[i].setName(name1);
     //重新輸入學生的學號
     System.out.println("請您輸入學生學號");
     String stuNum1=scanner.next();
     stus[i].setStuNum(stuNum1);
     //重新輸入學生的性別
     System.out.println("請您輸入學生性別");
     String gender1=scanner.next();
     stus[i].setGender(gender1);
     //重新輸入學生的年齡
     System.out.println("請您輸入學生年齡");
     int age1=scanner.nextInt();
     stus[i].setAge(age1);
     //重新輸入學生的成績
     System.out.println("請您輸入學生成績");
     Float score1=scanner.nextFloat();
     stus[i].setScore(score1);
     System.out.println("----------修改完成--------------");
     beep=true;
     
     }
    }
    if(beep) {
     System.out.println("沒有找到給學生信息,請重新定義");
    }
    
   }
   break;
  case 3:{
   boolean bo=false;//bo確定是否找到該學生信息
   int w=0;
   System.out.println("請您輸入您要刪除的學生的學號:");
   String stuNum2=scanner.next();
   for(int i=0;i<stus.length;i++)
   {if(stus[i].getStuNum().equals(stuNum2)){
    System.out.println("找到給學生,請說明是否刪除。請輸入是或否:");
    String sf=scanner.next();
    if (sf=="是"){
     /**
      * 把後一位的學生信息都放到前一個數組元素內
      */
     for (int j=i;j<stus.length-w;j++){
     stus[j]=stus[j+1];
     }
      for(int k=999;k>stus.length-w;k--){
       stus[k]=null;
      }
     bo=true;
    } 
      
    else if(sf=="否"){
     break;
    }
    
  }
  
   if(bo){
    System.out.println("您輸入的數據有錯誤,請重新輸入");
    break;
    } 
   }
  }  
   break; 
   //查詢學生信息
   case 4:{
    boolean boo=false;
    System.out.println("請輸入您要查詢的學生的學號");
    String stuNum3=scanner.next();
    for(int i=0;i<stus.length;i++){
     if(stuNum3.equals(stus[i].getStuNum())){
      System.out.println("這位學生的姓名:" + stus[i].getName());
      System.out.println("這位學生的學號:"+stus[i].getStuNum());
      System.out.println("這位學生的性別:"+stus[i].getGender());
      System.out.println("這位學生的年齡:"+stus[i].getAge());
      System.out.println("這位學生的成績:"+stus[i].getScore());
      }
    
     }
   }
    break;
    //退出系統
    case 0:{
     System.out.println("--------退出系統---------------");
     scanner.close();//scanner.close()表示輸入關閉
     System.exit(0);//System.exit(0)表示系統關閉
     
    }
    
   } 
    
  
  
  }
  
  
 } 
}

 

package Homework08;
//創建一個學生Student類,包含屬性和功能。
public class Student {
 //屬性(學號,姓名,性別,年齡,分數)
 String stuNum;
 String name;
 String gender;
 int age;
 float score;
 
 //功能如下
 //輸入學號
 public void setStuNum(String stuNum){
  this.stuNum=stuNum;
 } 
 //輸出學號
 public String getStuNum(){
  return stuNum;
 }
 
 //輸入名字
 public void setName(String name){
  this.name=name;
 }
 //輸出名字
 public String getName(){
  return name;
 }
 
 //輸入性別
 public void setGender(String gender){
  this.gender=gender;
 }
 //輸出性別
 public String getGender(){
  return gender;
 }
 //輸入年齡
 public void setAge(int age){
  this.age=age;
 }
 //輸出年齡
 public int getAge(){
  return age;
 }
 //輸入分數
 public void setScore(float score){
  this.score=score;
 }
 //輸出分數
 public float getScore(){
  return score;
 }
 

}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章