微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

学生信息管理系统java版

本文为大家分享了java学生信息管理系统的源代码,供大家参考,具体内容如下

/*学生信息管理系统,实现学生信息: 
 *增加 int[] a=new int[9] 
 *删除 
 *查找 
 *更改 
 */ 
import java.util.Scanner;//导入java输入流 
import java.lang.*; 
import java.io.*; 
class Student 
{ 
  private static Student[] s=new Student[2]; 
  int n=0; 
  private String name; 
  private int num; 
  private String classAge; 
   
  public void judge()throws IOException 
  { 
    int i; 
    char ch; 
    String str; 
    Scanner In=new Scanner(system.in); 
    if(n==0) 
    { 
      System.out.print("你还没有录入任何学生,是否录入(Y/N):"); 
      str=In.next(); 
      ch=str.charat(0); 
      while(ch!='Y'&&ch!='y'&&ch!='N'&&ch!='n') 
      { 
        System.out.print("输入有误,请重新输入:"); 
        str=In.next(); 
        ch=str.charat(0); 
      } 
      if(ch=='Y'||ch=='y') 
      { 
        this.add(); 
      } 
      if(ch=='N'||ch=='n') 
      { 
        this.menu(); 
      } 
    } 
  } 
   
  public void menu()throws IOException//定义菜单函数 
  { 
    int a;//定义switch语句变量 
    Scanner in=new Scanner(system.in);//实例化输入流对象 
    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("*****      0.退出       *****"); 
    System.out.println("****************************************"); 
    System.out.print("请选择(0~5):"); 
    a=in.nextInt(); 
    while(a<0||a>5) 
    { 
      System.out.print("输入超出范围,请重新输入:"); 
      a=in.nextInt(); 
    } 
    switch(a) 
    { 
      case 1:this.add();break; 
      case 2:this.show();break; 
      case 3:this.modif();break; 
      case 4:this.delete();break; 
      case 5:this.look();break; 
      case 0:System.exit(0);break; 
    }       
  } 
   
  public void add()throws IOException//定义增加函数 
  { 
    String str,str1,str2; 
    int i,num1,t=1; 
    char ch,ch1; 
    FileWriter fw=new FileWriter("F://javaFile//student.txt",true); 
    fw.write("       录入的学生信息列表\r\n\r\n学号   姓名   班级\r\n"); 
    Scanner In=new Scanner(system.in); 
    while(t==1) 
    { 
      System.out.print("请输入学生学号:"); 
      num1=In.nextInt(); 
      for(i=0;i<n;i++) 
      { 
        while(s[i].num==num1) 
        { 
          System.out.println("已存在此学号,请重新输入"); 
          System.out.print("请输入学号:"); 
          num1=In.nextInt(); 
        } 
      } 
      s[n].num=num1; 
      str2=String.valueOf(num1); 
      fw.write(str2+"  "); 
      System.out.println(); 
      System.out.print("请输入学生姓名:"); 
      s[n].name=In.next(); 
      fw.write(s[n].name+"   "); 
      System.out.println(); 
      System.out.print("请输入学生班级:"); 
      s[n].classAge=In.next(); 
      fw.write(s[n].classAge+"\r\n"); 
      ++n; 
      fw.close();  
      System.out.println(); 
      System.out.print("是否继续添加(Y/N)"); 
      str=In.next(); 
      ch=str.charat(0); 
      while(ch!='N'&&ch!='n'&&ch!='Y'&&ch!='y') 
      { 
        System.out.print("输入有误,请重新输入:"); 
        str=In.next(); 
        ch=str.charat(0); 
      } 
      if(ch=='N'||ch=='n') 
      { 
        break; 
      } 
    } 
    System.out.println(); 
    System.out.print("是否返回主菜单(Y/N)"); 
    str1=In.next(); 
    ch1=str1.charat(0); 
    while(ch1!='Y'&&ch1!='y'&&ch1!='N'&&ch1!='n') 
    { 
      System.out.print("输入有误,请重新输入:"); 
      str1=In.next(); 
      ch1=str1.charat(0); 
    } 
    if(ch1=='Y'||ch1=='y') 
    { 
      this.menu(); 
    } 
    if(ch1=='N'||ch1=='n') 
    { 
      System.out.println("正在退出...谢谢使用!"); 
      System.exit(0); 
    } 
  } 
   
  public void show()throws IOException 
  { 
    int i; 
    this.judge();   
    System.out.println("本次操作共录入"+n+"位学生!"); 
    System.out.println("你录入的学生信息如下:"); 
    System.out.println(); 
    System.out.println("学号\t\t姓名\t班级"); 
    for(i=0;i<n;i++)             
    { 
      System.out.println(s[i].num+"    "+s[i].name+"   "+s[i].classAge); 
    } 
    System.out.println("系统返回主菜单!"); 
    this.menu(); 
  } 
   
  public void delete()throws IOException//删除信息功能实现 注:本功能暂时不具备可扩展性 
  { 
    this.judge(); 
    int j=0,t=0,k=0,num1; 
    char ch; 
    String str; 
    Scanner pin=new Scanner(system.in); 
    System.out.print("请输入要删除的学号:"); 
    num1=pin.nextInt(); 
    for(j=0;j<n;j++) 
    { 
      if(s[j].num==num1) 
      { 
        k=1; 
        t=j; 
      } 
    } 
    if(k==0) 
    { 
      System.out.println("对不起!你要删除的学号不存在!"); 
      System.out.println("系统将返回主菜单!"); 
      this.menu(); 
    } 
    if(k==1) 
    { 
      System.out.println("你要删除的学生信息如下:");//打印管理员删除的学生信息 
      System.out.println("学号\t姓名\t班级");//本功能暂时不备扩展性 
      System.out.println(s[t].num+"   "+s[t].name+"   "+s[t].classAge); 
      System.out.println(); 
      System.out.print("你确定要删除(Y/N):"); 
      str=pin.next(); 
      ch=str.charat(0); 
      while(ch!='Y'&&ch!='y'&&ch!='N'&&ch!='n') 
      { 
        System.out.print("输入有误,请重新输入:"); 
        str=pin.next(); 
        ch=str.charat(0); 
      } 
      if(ch=='N'||ch=='n') 
      { 
        System.out.println(); 
        System.out.println("系统返回主菜单!"); 
        this.menu(); 
      } 
      if(ch=='Y'||ch=='y') 
      { 
        for(j=t;j<n-1;j++) 
        { 
          s[j]=s[j+1]; 
        } 
        n--; 
        System.out.println("数据成功删除!"); 
        System.out.println("系统返回主菜单!"); 
        this.menu(); 
      } 
    } 
  } 
   
  public void look()throws IOException 
  { 
    FileReader fr=new FileReader("F://javaFile//student.txt"); 
    int a; 
    while((a=fr.read())!=-1) 
    { 
      System.out.print((char)a); 
    } 
    fr.close(); 
    System.out.println("系统返回主菜单!"); 
    System.out.println(); 
    this.menu(); 
  } 
   
  public void modif()throws IOException 
  { 
    this.judge(); 
    int j=0,num2,num3,moi,c=1; 
    char ch; 
    String str,str2; 
    Scanner pin=new Scanner(system.in); 
    System.out.print("请输入要修改的学号:"); 
    num2=pin.nextInt(); 
    for(j=0;j<n;j++) 
    { 
      if(s[j].num==num2) 
      { 
        k=1; 
        t=j; 
      } 
    } 
    if(k==0) 
    { 
      System.out.println("对不起!你要修改的学号不存在!"); 
      System.out.println("系统将返回主菜单!"); 
      this.menu(); 
    } 
    if(k==1) 
    { 
      System.out.println("你要修改的学生信息如下:");//打印管理员删除的学生信息 
      System.out.println("学号\t姓名\t班级");//本功能暂时不备扩展性 
      System.out.println(s[t].num+"   "+s[t].name+"   "+s[t].classAge); 
      System.out.println(); 
      System.out.print("你确定要修改(Y/N):"); 
      str=pin.next(); 
      ch=str.charat(0); 
      while(ch!='Y'&&ch!='y'&&ch!='N'&&ch!='n') 
      { 
        System.out.print("输入有误,请重新输入:"); 
        str=pin.next(); 
        ch=str.charat(0); 
      } 
      if(ch=='N'||ch=='n') 
      { 
        System.out.println(); 
        System.out.println("系统返回主菜单!"); 
        this.menu(); 
      } 
      while(c==1) 
      { 
        if(ch=='Y'||ch=='y') 
        { 
          System.out.println("****************************************"); 
          System.out.println("*****     1.修改学号      *****"); 
          System.out.println("*****     2.修改班级      *****"); 
          System.out.println("*****     3.修改姓名      *****"); 
          System.out.println("****************************************"); 
          System.out.print("请选择:"); 
          moi=pin.nextInt(); 
          switch(moi) 
          { 
            case 1:System.out.print("请输入新的学号:");num3=pin.nextInt();s[t].num=num3;break; 
            case 2:System.out.print("请输入新的班级:");str1=pin.next();s[t].classAge=str1;break; 
            case 3:System.out.print("请输入新的姓名:");str2=pin.next();s[t].name=str2;break; 
          } 
          System.out.println("数据已成功修改!"); 
        } 
        System.out.print("是否继续修改(Y/N)"); 
        str=pin.next(); 
        ch=str.charat(0); 
        System.out.println(); 
        while(ch!='Y'&&ch!='y'&&ch!='N'&&ch!='n') 
        { 
          System.out.print("输入有误,请重新输入:"); 
          str=pin.next(); 
          ch=str.charat(0); 
        } 
        if(ch=='N'||ch=='n') 
        { 
          break; 
        } 
      }   
    } 
    System.out.println(); 
    System.out.println("系统返回主菜单!"); 
    this.menu(); 
  } 
   
  public static void main(String[] args)throws IOException 
  {   
    Student stu=new Student(); 
    for(int i=0;i<2;i++) 
    { 
      s[i]=new Student(); 
    } 
    stu.menu(); 
  } 
} 

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持编程小技巧。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐