package StudentScore; public class ScoreInformation { String stunumber; //学号 String name; //姓名 double mathematicsscore; //高数成绩 double englishiscore; //英语成绩 double networkscore; //计算机网络成绩 double databasescore; //数据库成绩 double softwarescore; //软件工程成绩 //构造函数 public ScoreInformation(String stu,String n,double math,double eng,double net,double data,double sofe) { this.stunumber=stu; this.name=n; this.mathematicsscore=math; this.englishiscore=eng; this.databasescore=net; this.softwarescore=sofe; } String getstunumber() { return stunumber; } void setstunumber(String a) { stunumber=a; } String getname() { return name; } void setname(String a) { name=a; } double getmathematicsscore() { return mathematicsscore; } void setmathematicsscore(double a) { mathematicsscore=a; } double getenglishiscore() { return englishiscore; } void setenglishiscore(double a) { englishiscore=a; } double getnetworkscore() { return networkscore; } void setnetworkscore(double a) { networkscore=a; } double getdatabasescore() { return databasescore; } void setdatabasescore(double a) { databasescore=a; } double getsoftwarescore() { return softwarescore; } void setsoftwarescore(double a) { softwarescore=a; } } package StudentScore; import java.util.Scanner; public class ScoreManagement { //利用数组实现存储五个学生的信息 static ScoreInformation[] ss= {new ScoreInformation("20183607","徐姣美",0,0,0,0,0),new ScoreInformation("20180001","yi",0,0,0,0,0),new ScoreInformation("20180002","er",0,0,0,0,0),new ScoreInformation("20180003","san",0,0,0,0,0),new ScoreInformation("20180004","si",0,0,0,0,0)}; static Scanner stud=new Scanner(System.in); public static void main(String[] args) { menu();//显示目录 } //菜单目录 static void menu() { System.out.println("***************************************"); System.out.println(" 石家庄铁道大学软件工程系"); System.out.println(" 学生学籍管理系统 2019 版"); System.out.println("****************************************"); System.out.println(" 1、 学生考试成绩录入"); System.out.println(" 2、 学生考试成绩修改"); System.out.println(" 3、 计算学生成绩绩点"); System.out.println(" 4、退出学籍管理系统"); System.out.println("****************************************"); Scanner stud=new Scanner(System.in); int a=stud.nextInt(); switch(a) { case 1:add();break; //录入 case 2:xiugai();break; //修改 case 3:jidian();break; //计算绩点 case 4:exit();break; //退出 default:System.out.println("输入错误");menu(); //输入有误 } } //录入成绩 static void add() { System.out.println("***************************************"); System.out.println(" 石家庄铁道大学软件工程系学生学籍管理系统 2019 版 "); System.out.println(" 学生考试成绩录入 "); System.out.println("***************************************"); System.out.println(" 请输入学生学号: "); System.out.println("***************************************"); Scanner stud=new Scanner(System.in); String str=stud.nextLine(); int flag=0; for(int i=0;i<5;i++) { if(str.equals(ss[i].getstunumber())) { flag=1; //如果存在这个学号,flag置为1 System.out.println("***************************************"); System.out.println(" 石家庄铁道大学软件工程系学生学籍管理系统 2019 版"); System.out.println(" 学生考试成绩录入 "); System.out.println("***************************************"); System.out.println(" 学生学号:"+str); System.out.println(" 学生姓名:"+ss[i].getname()); System.out.println(" 请输入高等数学成绩:"); System.out.println("***************************************"); double sc1=stud.nextDouble(); System.out.println("***************************************"); System.out.println(" 石家庄铁道大学软件工程系学生学籍管理系统 2019 版 "); System.out.println(" 学生考试成绩录入"); System.out.println("***************************************"); System.out.println(" 学生学号:"+str); System.out.println(" 学生姓名:"+ss[i].getname()); System.out.println(" 高等数学成绩:"+sc1); System.out.println(" 请输入大学英语成绩:"); System.out.println("***************************************"); double sc2 =stud.nextDouble(); System.out.println("***************************************"); System.out.println(" 石家庄铁道大学软件工程系学生学籍管理系统 2019 版 "); System.out.println(" 学生考试成绩录入"); System.out.println("***************************************"); System.out.println(" 学生学号:"+str); System.out.println(" 学生姓名:"+ss[i].getname()); System.out.println(" 高等数学成绩:"+sc1); System.out.println(" 大学英语成绩:"+sc2); System.out.println(" 请输入计算机网络成绩:"); System.out.println("***************************************"); double sc3=stud.nextDouble(); System.out.println("***************************************"); System.out.println(" 石家庄铁道大学软件工程系学生学籍管理系统 2019 版 "); System.out.println(" 学生考试成绩录入 "); System.out.println("***************************************"); System.out.println(" 学生学号:"+str); System.out.println(" 学生姓名:"+ss[i].getname()); System.out.println(" 高等数学成绩:"+sc1); System.out.println(" 大学英语成绩:"+sc2); System.out.println(" 计算机网络成绩:"+sc3); System.out.println(" 请输入数据库成绩:"); System.out.println("***************************************"); double sc4=stud.nextDouble(); System.out.println("***************************************"); System.out.println(" 石家庄铁道大学软件工程系学生学籍管理系统 2019 版"); System.out.println(" 学生考试成绩录入 "); System.out.println("***************************************"); System.out.println(" 学生学号:"+str); System.out.println(" 学生姓名:"+ss[i].getname()); System.out.println(" 高等数学成绩:"+sc1); System.out.println(" 大学英语成绩:"+sc2); System.out.println(" 计算机网络成绩:"+sc3); System.out.println(" 数据库成绩:"+sc4); System.out.println(" 请输入软件工程成绩:"); System.out.println("***************************************"); double sc5=stud.nextDouble(); System.out.println("***************************************"); System.out.println(" 石家庄铁道大学软件工程系学生学籍管理系统 2019 版 "); System.out.println(" 学生考试成绩录入 "); System.out.println("***************************************"); System.out.println(" 学生学号:"+str); System.out.println(" 学生姓名:"+ss[i].getname()); System.out.println(" 高等数学成绩:"+sc1); System.out.println(" 大学英语成绩:"+sc2); System.out.println(" 计算机网络成绩:"+sc3); System.out.println(" 数据库成绩:"+sc4); System.out.println(" 软件工程成绩:"+sc5); System.out.println("***************************************"); System.out.println(" 该学生成绩已录入完毕,是否提交(Y/N)"); System.out.println("***************************************"); Scanner stu=new Scanner(System.in); String s=stu.nextLine(); //如果输入Y if(s.equals("Y")) { ss[i].setmathematicsscore(sc1); ss[i].setenglishiscore(sc2); ss[i].setnetworkscore(sc3); ss[i].setdatabasescore(sc4); ss[i].setsoftwarescore(sc5); menu(); } else { add(); } } //输入有误 if(flag==0) { System.out.println("输入错误!"); add(); //返回成绩录入界面 } } } //修改成绩 static void xiugai() { String s; System.out.println("***************************************"); System.out.println(" 石家庄铁道大学软件工程系学生学籍管理系统 2019 版 "); System.out.println(" 学生考试成绩修改界面 "); System.out.println("***************************************"); System.out.println(" 请输入学生学号: "); System.out.println("***************************************"); System.out.println("请输入八位学号"); String str1=stud.nextLine(); int flag=0; for(int i=0;i<5;i++) { if(str1.equals(ss[i].getstunumber())) { System.out.println("***************************************"); System.out.println(" 石家庄铁道大学软件工程系学生学籍管理系统 2019 版 "); System.out.println(" 学生考试成绩修改界面 "); System.out.println("***************************************"); System.out.println(" 学生学号:"+ss[i].getstunumber()); System.out.println(" 学生姓名:"+ss[i].getname()); System.out.println(" 1、高等数学成绩:"+ss[i].getmathematicsscore()); System.out.println(" 2、大学英语成绩:"+ss[i].getenglishiscore()); System.out.println(" 3、计算机网络成绩:"+ss[i].getnetworkscore()); System.out.println(" 4、数据库成绩:"+ss[i].getdatabasescore()); System.out.println(" 5、软件工程成绩:"+ss[i].getsoftwarescore()); System.out.println("***************************************"); flag=1; //如果存在这个学号,flag为1 int a=stud.nextInt(); //序号 if(a==1) { System.out.println("***************************************"); System.out.println(" 石家庄铁道大学软件工程系学生学籍管理系统 2019 版 "); System.out.println(" 学生考试成绩修改界面 "); System.out.println("***************************************"); System.out.println(" 学生学号:"+ss[i].getstunumber()); System.out.println(" 学生姓名:"+ss[i].getname()); System.out.println(" 请输入修改后高等数学成绩:"); double sc11=stud.nextDouble(); System.out.println("***************************************"); System.out.println(" 石家庄铁道大学软件工程系学生学籍管理系统 2019 版 "); System.out.println(" 学生考试成绩修改界面 "); System.out.println("***************************************"); System.out.println(" 学生学号:"+ss[i].getstunumber()); System.out.println(" 学生姓名:"+ss[i].getname()); System.out.println(" 1、高等数学成绩:"+sc11); System.out.println(" 2、大学英语成绩:"+ss[i].getenglishiscore()); System.out.println(" 3、计算机网络成绩:"+ss[i].getnetworkscore()); System.out.println(" 4、数据库成绩:"+ss[i].getdatabasescore()); System.out.println(" 5、软件工程成绩:"+ss[i].getsoftwarescore()); System.out.println(" 该学生成绩已修改完毕,是否提交(Y/N)"); System.out.println("***************************************"); Scanner stu=new Scanner(System.in); String s1=stu.nextLine(); if(s1.equals("Y")) { ss[i].setmathematicsscore(sc11); menu(); } else { xiugai(); } } else if(a==2) { System.out.println("***************************************"); System.out.println(" 石家庄铁道大学软件工程系学生学籍管理系统 2019 版 "); System.out.println(" 学生考试成绩修改界面 "); System.out.println("***************************************"); System.out.println(" 学生学号:"+ss[i].getstunumber()); System.out.println(" 学生姓名:"+ss[i].getname()); System.out.println(" 请输入修改后大学英语成绩:"); double sc22=stud.nextDouble(); System.out.println("***************************************"); System.out.println(" 石家庄铁道大学软件工程系学生学籍管理系统 2019 版 "); System.out.println(" 学生考试成绩修改界面 "); System.out.println("***************************************"); System.out.println(" 学生学号:"+ss[i].getstunumber()); System.out.println(" 学生姓名:"+ss[i].getname()); System.out.println(" 1、高等数学成绩:"+ss[i].getmathematicsscore()); System.out.println(" 2、大学英语成绩:"+sc22); System.out.println(" 3、计算机网络成绩:"+ss[i].getnetworkscore()); System.out.println(" 4、数据库成绩:"+ss[i].getdatabasescore()); System.out.println(" 5、软件工程成绩:"+ss[i].getsoftwarescore()); System.out.println(" 该学生成绩已修改完毕,是否提交(Y/N)"); System.out.println("***************************************"); Scanner stu=new Scanner(System.in); String s1=stu.nextLine(); if(s1.equals("Y")) { ss[i].setenglishiscore(sc22); menu(); } else { xiugai(); } } else if(a==3) { System.out.println("***************************************"); System.out.println(" 石家庄铁道大学软件工程系学生学籍管理系统 2019 版 "); System.out.println(" 学生考试成绩修改界面 "); System.out.println("***************************************"); System.out.println(" 学生学号:"+ss[i].getstunumber()); System.out.println(" 学生姓名:"+ss[i].getname()); System.out.println(" 请输入修改后计算机网络成绩:"); double sc33=stud.nextDouble(); System.out.println("***************************************"); System.out.println(" 石家庄铁道大学软件工程系学生学籍管理系统 2019 版 "); System.out.println(" 学生考试成绩修改界面 "); System.out.println("***************************************"); System.out.println(" 学生学号:"+ss[i].getstunumber()); System.out.println(" 学生姓名:"+ss[i].getname()); System.out.println(" 1、高等数学成绩:"+ss[i].getmathematicsscore()); System.out.println(" 2、大学英语成绩:"+ss[i].getenglishiscore()); System.out.println(" 3、计算机网络成绩:"+sc33); System.out.println(" 4、数据库成绩:"+ss[i].getdatabasescore()); System.out.println(" 5、软件工程成绩:"+ss[i].getsoftwarescore()); System.out.println(" 该学生成绩已修改完毕,是否提交(Y/N)"); System.out.println("***************************************"); Scanner stu=new Scanner(System.in); String s1=stu.nextLine(); if(s1.equals("Y")) { ss[i].setnetworkscore(sc33); menu(); } else { xiugai(); } } else if(a==4) { System.out.println("***************************************"); System.out.println(" 石家庄铁道大学软件工程系学生学籍管理系统 2019 版 "); System.out.println(" 学生考试成绩修改界面 "); System.out.println("***************************************"); System.out.println(" 学生学号:"+ss[i].getstunumber()); System.out.println(" 学生姓名:"+ss[i].getname()); System.out.println(" 请输入修改后数据库成绩:"); double sc44=stud.nextDouble(); System.out.println("***************************************"); System.out.println(" 石家庄铁道大学软件工程系学生学籍管理系统 2019 版 "); System.out.println(" 学生考试成绩修改界面 "); System.out.println("***************************************"); System.out.println(" 学生学号:"+ss[i].getstunumber()); System.out.println(" 学生姓名:"+ss[i].getname()); System.out.println(" 1、高等数学成绩:"+ss[i].getmathematicsscore()); System.out.println(" 2、大学英语成绩:"+ss[i].getenglishiscore()); System.out.println(" 3、计算机网络成绩:"+ss[i].getnetworkscore()); System.out.println(" 4、数据库成绩:"+sc44); System.out.println(" 5、软件工程成绩:"+ss[i].getsoftwarescore()); System.out.println(" 该学生成绩已修改完毕,是否提交(Y/N)"); System.out.println("***************************************"); Scanner stu=new Scanner(System.in); String s1=stu.nextLine(); if(s1.equals("Y")) { ss[i].setdatabasescore(sc44); menu(); } else { xiugai(); } } else if(a==5) { System.out.println("***************************************"); System.out.println(" 石家庄铁道大学软件工程系学生学籍管理系统 2019 版 "); System.out.println(" 学生考试成绩修改界面 "); System.out.println("***************************************"); System.out.println(" 学生学号:"+ss[i].getstunumber()); System.out.println(" 学生姓名:"+ss[i].getname()); System.out.println(" 请输入修改后软件工程成绩:"); double sc55=stud.nextDouble(); System.out.println("***************************************"); System.out.println(" 石家庄铁道大学软件工程系学生学籍管理系统 2019 版 "); System.out.println(" 学生考试成绩修改界面 "); System.out.println("***************************************"); System.out.println(" 学生学号:"+ss[i].getstunumber()); System.out.println(" 学生姓名:"+ss[i].getname()); System.out.println(" 1、高等数学成绩:"+ss[i].getmathematicsscore()); System.out.println(" 2、大学英语成绩:"+ss[i].getenglishiscore()); System.out.println(" 3、计算机网络成绩:"+ss[i].getnetworkscore()); System.out.println(" 4、数据库成绩:"+ss[i].getdatabasescore()); System.out.println(" 5、软件工程成绩:"+sc55); System.out.println(" 该学生成绩已修改完毕,是否提交(Y/N)"); System.out.println("***************************************"); Scanner stu=new Scanner(System.in); String s1=stu.nextLine(); if(s1.equals("Y")) { ss[i].setsoftwarescore(sc55); menu(); } else { xiugai(); } } if(flag==0) { System.out.println("输入错误!"); xiugai(); } } } } static void jidian() { System.out.println("***************************************"); System.out.println(" 石家庄铁道大学软件工程系学生学籍管理系统 2019 版 "); System.out.println(" 学生考试成绩绩点计算界面 "); System.out.println("***************************************"); System.out.println(" 请输入学生学号: "); System.out.println("***************************************"); System.out.println("请输入八位学号"); String str=stud.nextLine(); for(int i=0;i<5;i++) { if(str.equals(ss[i].getstunumber())) { System.out.println("***************************************"); System.out.println(" 石家庄铁道大学软件工程系学生学籍管理系统 2019 版 "); System.out.println(" 学生考试成绩录入 "); System.out.println("***************************************"); System.out.println(" 学生学号:"+ss[i].getstunumber()); System.out.println(" 学生姓名:"+ss[i].getname()); System.out.println(" 1、高等数学成绩绩点:"+judge(ss[i].getmathematicsscore())); System.out.println(" 2、大学英语成绩绩点:"+judge(ss[i].getenglishiscore())); System.out.println(" 3、计算机网络成绩绩点:"+judge(ss[i].getnetworkscore())); System.out.println(" 4、数据库成绩绩点:"+judge(ss[i].getdatabasescore()));System.out.println(" 5、软件工程成绩绩点:"+judge(ss[i].getsoftwarescore())); double average; average=(judge(ss[i].getmathematicsscore())*4+judge(ss[i].getenglishiscore())*3+judge(ss[i].getnetworkscore())*4+judge(ss[i].getdatabasescore())*3+judge(ss[i].getsoftwarescore())*2)/16; System.out.println(" 你的平均学分绩点为:"+String.format("%.2f", average)); if(average>=2) { System.out.println(" 你的学分绩点已达到毕业要求!"); } else { System.out.println(" 你的学分绩点不满足毕业要求!"); } System.out.println(" 是否返回系统主界面:(Y/N)"); System.out.println("***************************************"); } Scanner st=new Scanner(System.in); String s=st.nextLine(); if(s.equals("Y")) { menu(); } } } //判断分数对应的绩点 static double judge(double score) { double jidian; if(score<60) { jidian=0; } else if(score>=60&&score<=63.9) { jidian=1.0; } else if(score>=64&&score<=65.9) { jidian=1.5; } else if(score>=66&&score<=65.9) { jidian=1.7; } else if(score>=68&&score<=71.9) { jidian=2.0; } else if(score>=72&&score<=74.9) { jidian=2.3; } else if(score>=75&&score<=77.9) { jidian=2.7; } else if(score>=78&&score<=81.9){ jidian=3.0; } else if(score>=82&&score<=84.0) { jidian=3.3; } else if(score>=85&&score<=89.9) { jidian=3.7; } else { jidian=4.0; } return jidian; } //退出 static void exit() { System.out.println("***************************************"); System.out.println(" 谢谢使用石家庄铁道大学软件工程系学生学籍管理系统 2019 版 "); System.out.println(" 制作人:徐姣美 "); System.out.println("***************************************"); } }
截图:
开学测试感想:
第一次用JAVA编这么长的代码,和小学期用C++写的学生管理系统差不多,思路相同,而且老师指导了。但是运用JAVA编程的次数太少,根本就不熟练,很多用法都不会。这几个功能写的都不完善,写的也比较乱,匆匆忙忙地交了。后来回宿舍又重新写了一遍,不清楚地地方查了百度,由于之前写过,思路比较清晰,这个比较顺利地写出来了。以后要更多地编程,只有练习,才会越来越熟练。