欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

java学生成绩管理系统设计与实现

程序员文章站 2024-02-11 18:07:52
本文实例为大家分享了java学生成绩管理系统的具体代码,供大家参考,具体内容如下 /* *@copyright by lzyrapx on 2016/4/1...

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

/* 
 *@copyright by lzyrapx on 2016/4/12. 
 *@name:java学生成绩管理系统. 
 *@功能:学生相关信息,录入,查询,统计,修改等.... 
 *@ps:图形界面的学生管理系统不要求就不做了. 
 */ 
 
import java.util.scanner; 
import java.lang.*; 
import java.io.*; 
class student 
{ 
 private static student[] s=new student[100]; //录入学生上限 
 int n=0; 
 private string name; 
 private int num; 
 private string classage; 
 private int chinese; 
 private int math; 
 private int english; 
  
 //判断是否有录入学生信息 
 public void judge() throws ioexception 
 { 
  int i; 
  char ch; 
  string str; 
  scanner in=new scanner(system.in); 
  if(n==0) 
  { 
   system.out.println("你还没有录入任何学生信息,是否录入(y/n):"); 
   str=in.next(); 
   ch=str.charat(0); 
   while(ch!='y'&&ch!='y'&&ch!='n'&&ch!='n') 
   { 
    system.out.println("输入有误,请重新输入:"); 
    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 //将异常抛出,调用这个方法去处理异常,如果main方法也将异常抛出,则交给java虚拟机来处理,下同. 
 { 
  int a; 
  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.out.println("成功退出系统!!!");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("e://student.txt",true); //将学生信息录入指定的txt文件中 
   
  fw.write("    录入的学生信息列表\r\n\r\n学号 姓名 班级 语文成绩  数学成绩 英语成绩\r\n"); 
  scanner in=new scanner(system.in); 
  while(t==1) 
  { 
   system.out.println("请输入学生学号:"); 
   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.println("请输入学生姓名:"); 
   s[n].name=in.next(); 
   fw.write(s[n].name+"  "); 
   system.out.println(); 
   system.out.println("请输入学生班级:"); 
   s[n].classage=in.next(); 
   fw.write(s[n].classage+" "); 
   system.out.println("请输入学生语文成绩:"); 
   s[n].chinese=in.nextint(); 
   fw.write(s[n].chinese+" ");      
   system.out.println("请输入学生数学成绩:"); 
   s[n].math=in.nextint(); 
   fw.write(s[n].chinese+" "); 
   system.out.println("请输入学生英语成绩:"); 
   s[n].english=in.nextint(); 
   fw.write(s[n].english+"\r\n"); 
   ++n; 
   fw.close(); 
   system.out.println(); 
   system.out.println("是否继续添加(y/n)"); 
   str=in.next(); 
   ch=str.charat(0); 
   while(ch!='n'&&ch!='n'&&ch!='y'&&ch!='y') 
   { 
    system.out.println("输入无效,请重新输入:"); 
    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.println("输入无效,请重新输入:"); 
   str1=in.next(); 
   ch1=str1.charat(0); 
  } 
  if(ch1=='y'||ch1=='y') 
  { 
   this.menu(); 
  } 
  if(ch1=='n'||ch1=='n') 
  { 
   system.out.println(""); 
   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语文\t数学\t英语"); 
  for(i=0;i<n;i++)       
  { 
   system.out.println(s[i].num+"  "+s[i].name+"  "+s[i].classage+"  "+s[i].chinese+"  "+s[i].math+"  "+s[i].english); 
  } 
  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.println("请输入要删除的学号:"); 
  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.println("你确定要删除(y/n):"); 
   str=pin.next(); 
   ch=str.charat(0); 
   while(ch!='y'&&ch!='y'&&ch!='n'&&ch!='n') 
   { 
    system.out.println("输入无效,请重新输入:"); 
    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("e://student.txt"); //查看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,t=0,k=0,num2,num3,moi,c=1; 
  char ch; 
  string str,str1,str2; 
  scanner pin=new scanner(system.in); 
  system.out.println("请输入要修改的学号:"); 
  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("语文\t数学\t英语"); 
   system.out.println(s[t].chinese+"  "+s[t].math+"  "+s[t].english); 
   system.out.println(); 
   system.out.println("你确定要修改(y/n):"); 
   str=pin.next(); 
   ch=str.charat(0); 
   while(ch!='y'&&ch!='y'&&ch!='n'&&ch!='n') 
   { 
    system.out.println("输入无效,请重新输入:"); 
    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.println("请选择:"); 
     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<100;i++) 
  { 
   s[i]=new student(); 
  } 
  stu.menu(); 
 } 
} 

部分效果图:

java学生成绩管理系统设计与实现

java学生成绩管理系统设计与实现

java学生成绩管理系统设计与实现

java学生成绩管理系统设计与实现

java学生成绩管理系统设计与实现

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