package text; public class helloworld{ private String stunumber; private String name; private double mathematicsscore; private double englishiscore; private double networkscore; private double databasescore; private double softwarescore; public helloworld() {} public helloworld(String stunumber,String name,double mathematicsscore,double englishiscore,double networkscore,double databasescore,double softwarescore) { this.stunumber=stunumber; this.name=name; this.mathematicsscore=mathematicsscore; this.englishiscore=englishiscore; this.networkscore=networkscore; this.databasescore=databasescore; this.softwarescore=softwarescore; } public String getstunumber() { return stunumber; } public void setstunumber(String a) { stunumber=a; } public String getname() { return name; } public void setname(String a) { name=a; } public Double getmathematicsscore() { return mathematicsscore; } public void setmathematicsscore(double a) { mathematicsscore=a; } public Double getenglishiscore() { return englishiscore; } public void setenglishiscore(double a) { englishiscore=a; } public Double getnetworkscore() { return networkscore; } public void setnetworkscore(double a) { networkscore=a; } public Double getdatabasescore() { return databasescore; } public void setdatabasescore(double a) { databasescore=a; } public Double getsoftwarescore() { return softwarescore; } public void setsoftwarescore(double a) { softwarescore=a; } } package text; import java.util.Scanner; //姓名 冯静妃 学号 20183610 班级 信1805-3班 public class ScoreManagement { public static void main(String[] args) { Scanner a = new Scanner(System.in); // 定义数组预存五个学生的姓名以及学号; helloworld[] stu = new helloworld[5]; stu[0] = new helloworld("20183606", "晏雯慧",0,0,0,0,0); stu[1] = new helloworld("20183607", "徐娇美",2,2,2,2,2); stu[2] = new helloworld("20183608", "杨一帆",3,3,3,3,3); stu[3] = new helloworld("20183609", "胡海靖",4,4,4,4,4); stu[4] = new helloworld("20183610", "冯静妃",5,5,5,5,5); show(stu); } public static void show(helloworld[] stu) {//show函数显示主页面 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 a = new Scanner(System.in);// 输入选项 int choice = a.nextInt(); switch(choice) { case 1:add(stu);break;//考试成绩录入 case 2:change(stu);break;//考试成绩修改 case 3:jisuan(stu);break;//计算学生成绩 case 4:finish();break;//退出系统 default: { System.out.println("信息错误,该选项不存在"); show(stu); break; } } } public static void add(helloworld[] stu) {//学生信息的录入 System.out.println("****************************************"); System.out.println(" 石家庄铁道大学软件工程系学生学籍管理系统2019版 "); System.out.println(" 学生考试成绩录入界面 "); System.out.println("****************************************"); System.out.print(" 学生学号: "); Scanner sd = new Scanner(System.in); String number = sd.nextLine(); int flag = 0,i; for (i = 0; i < 5; i++) { if (number.equals(stu[i].getstunumber())) { System.out.println("*********************************************"); System.out.println(" 石家庄铁道大学软件工程系学生学籍管理系统 2019 版 "); System.out.println(" 学生学号:"+stu[i].getstunumber() ); System.out.println(" 学生姓名:"+stu[i].getname() ); System.out.println(" 请输入高等数学成绩:" ); System.out.println("***********************************************"); double math = sd.nextDouble(); System.out.println(stu[i].getname() + "的高数成绩是:" + math); System.out.print("请输入该生的英语成绩"); double english = sd.nextDouble(); System.out.println(stu[i].getname() + "的英语成绩是:" + english); System.out.print("请输入该生的计算机网络成绩"); double network = sd.nextDouble(); System.out.println(stu[i].getname() + "的计算机网络成绩是:" + network); System.out.print("请输入该生的数据库成绩"); double data = sd.nextDouble(); System.out.println(stu[i].getname() + "的数据库成绩是:" + data); System.out.print("请输入该生的软件成绩"); double soft = sd.nextDouble(); System.out.println("********************************************"); System.out.println(" 石家庄铁道大学软件工程系学生学籍管理系统 2019 版"); System.out.println(" 学生姓名:"+stu[i].getname()); System.out.println(" 高等数学成绩:"+math); System.out.println(" 大学英语成绩:"+english); System.out.println(" 计算机网络成绩:"+network); System.out.println(" 数据库成绩:"+data); System.out.println(" 软件工程成绩:"+soft); System.out.print(" 该学生成绩已录入完毕,是否提交(Y/N)"); System.out.println("**********************************************"); if (sd.next().equals("Y")) { stu[i].setenglishiscore(english); stu[i].setmathematicsscore(math); stu[i].setdatabasescore(data); stu[i].setnetworkscore(network); stu[i].setsoftwarescore(soft); show(stu); } else { System.out.println("返回录入页面"); add(stu); } flag = 1; } } // 如果没有该学生信息,提示重新输入。 if (flag == 0) { System.out.println("该学号不存在,请重新输入"); add(stu); } } public static void change(helloworld[] stu)//学生成绩修改 { Scanner a = new Scanner(System.in); System.out.println("******************************************"); System.out.println("石家庄铁道大学软件工程系学生学籍管理系统2019版"); System.out.println("学生考试成绩修改页面"); System.out.println("*******************************************"); System.out.print("请输入学生学号:"); String number = a.nextLine(); int flag = 0; for (int i = 0; i < 5; i++) { if (stu[i].getstunumber().equals(number)) { System.out.println("***********************************************"); System.out.println("石家庄铁道大学软件工程系学生学籍管理系统 2019 版"); System.out.println("学生考试成绩录入"); System.out.println("*************************************************"); System.out.println(" 学生学号:"+stu[i].getstunumber()); System.out.println(" 学生姓名:"+stu[i].getname()); System.out.println(" 1、高等数学成绩:"+stu[i].getmathematicsscore()); System.out.println(" 2、大学英语成绩:" + stu[i].getenglishiscore()); System.out.println(" 3、计算机网络成绩:" + stu[i].getnetworkscore()); System.out.println(" 4、数据库成绩:" + stu[i].getdatabasescore()); System.out.println(" 5、软件工程成绩:" + stu[i].getsoftwarescore()); System.out.println("**************************************************"); int select = a.nextInt(); double chang=0; switch (select) { case 1: System.out.println(" 学生考试成绩录入界面 "); System.out.println("*****************************************"); System.out.println(" 学生学号:"+stu[i].getstunumber()); System.out.println(" 学生姓名:"+stu[i].getname()); System.out.print(" 请输入修改后的高数成绩:"); chang=a.nextDouble(); System.out.println("********************************************************"); System.out.println(" 石家庄铁道大学软件工程系学生学籍管理系统 "); System.out.println("*********************************************************"); System.out.println(" 学生学号:"+stu[i].getstunumber()); System.out.println(" 学生姓名:"+stu[i].getname()); System.out.println(" 1、高等数学成绩:"+chang); System.out.println(" 2、大学英语成绩:" + stu[i].getenglishiscore()); System.out.println(" 3、计算机网络成绩:" + stu[i].getnetworkscore()); System.out.println(" 4、数据库成绩:" + stu[i].getdatabasescore()); System.out.println(" 5、软件工程成绩:" + stu[i].getsoftwarescore()); System.out.println("********************************************************"); System.out.print(" 该学生成绩已修改完毕,是否提交(Y/N)"); System.out.println("**********************************************************"); if(a.next().equals("Y")) { stu[i].setmathematicsscore(chang); show(stu); } else { change(stu); } break; case 2: System.out.println(" 学生考试成绩录入界面 "); System.out.println("*****************************************"); System.out.println(" 学生学号:"+stu[i].getstunumber()); System.out.println(" 学生姓名:"+stu[i].getname()); System.out.print(" 请输入修改后的大学英语成绩:"); chang=a.nextDouble(); System.out.println("********************************************************"); System.out.println(" 石家庄铁道大学软件工程系学生学籍管理系统 "); System.out.println("*********************************************************"); System.out.println(" 学生学号:"+stu[i].getstunumber()); System.out.println(" 学生姓名:"+stu[i].getname()); System.out.println(" 1、高等数学成绩:"+stu[i].getmathematicsscore()); System.out.println(" 2、大学英语成绩:" + chang); System.out.println(" 3、计算机网络成绩:" + stu[i].getnetworkscore()); System.out.println(" 4、数据库成绩:" + stu[i].getdatabasescore()); System.out.println(" 5、软件工程成绩:" + stu[i].getsoftwarescore()); System.out.println("********************************************************"); System.out.println(" 该学生成绩已修改完毕,是否提交(Y/N)"); System.out.println("**********************************************************"); if(a.next().equals("Y")) { stu[i].setenglishiscore(chang); show(stu); } else { change(stu); } break; case 3: System.out.println(" 学生考试成绩录入界面 "); System.out.println("*****************************************"); System.out.println(" 学生学号:"+stu[i].getstunumber()); System.out.println(" 学生姓名:"+stu[i].getname()); System.out.print(" 请输入修改后的计算机网络成绩:"); chang=a.nextDouble(); System.out.println("********************************************************"); System.out.println(" 石家庄铁道大学软件工程系学生学籍管理系统 "); System.out.println("*********************************************************"); System.out.println(" 学生学号:"+stu[i].getstunumber()); System.out.println(" 学生姓名:"+stu[i].getname()); System.out.println(" 1、高等数学成绩:"+stu[i].getmathematicsscore()); System.out.println(" 2、大学英语成绩:" + stu[i].getenglishiscore()); System.out.println(" 3、计算机网络成绩:" + chang); System.out.println(" 4、数据库成绩:" + stu[i].getdatabasescore()); System.out.println(" 5、软件工程成绩:" + stu[i].getsoftwarescore()); System.out.println("********************************************************"); System.out.print(" 该学生成绩已修改完毕,是否提交(Y/N)"); System.out.println("**********************************************************"); if(a.next().equals("Y")) { stu[i].setnetworkscore(chang); show(stu); } else { change(stu); } break; case 4: System.out.println(" 学生考试成绩录入界面 "); System.out.println("*****************************************"); System.out.println(" 学生学号:"+stu[i].getstunumber()); System.out.println(" 学生姓名:"+stu[i].getname()); System.out.print(" 请输入修改后的数据库成绩:"); chang=a.nextDouble(); System.out.println("********************************************************"); System.out.println(" 石家庄铁道大学软件工程系学生学籍管理系统 "); System.out.println("*********************************************************"); System.out.println(" 学生学号:"+stu[i].getstunumber()); System.out.println(" 学生姓名:"+stu[i].getname()); System.out.println(" 1、高等数学成绩:"+stu[i].getmathematicsscore()); System.out.println(" 2、大学英语成绩:" + stu[i].getenglishiscore()); System.out.println(" 3、计算机网络成绩:" + stu[i].getnetworkscore()); System.out.println(" 4、数据库成绩:" + chang); System.out.println(" 5、软件工程成绩:" + stu[i].getsoftwarescore()); System.out.println("********************************************************"); System.out.print(" 该学生成绩已修改完毕,是否提交(Y/N)"); System.out.println("**********************************************************"); if(a.next().equals("Y")) { stu[i].setdatabasescore(chang); show(stu); } else { change(stu); } break; case 5: System.out.println(" 学生考试成绩录入界面 "); System.out.println("*****************************************"); System.out.println(" 学生学号:"+stu[i].getstunumber()); System.out.println(" 学生姓名:"+stu[i].getname()); System.out.print(" 请输入修改后的软件工程成绩:"); chang=a.nextDouble(); System.out.println("********************************************************"); System.out.println(" 石家庄铁道大学软件工程系学生学籍管理系统 "); System.out.println("*********************************************************"); System.out.println(" 学生学号:"+stu[i].getstunumber()); System.out.println(" 学生姓名:"+stu[i].getname()); System.out.println(" 1、高等数学成绩:"+stu[i].getmathematicsscore()); System.out.println(" 2、大学英语成绩:" + stu[i].getenglishiscore()); System.out.println(" 3、计算机网络成绩:" + stu[i].getnetworkscore()); System.out.println(" 4、数据库成绩:" + stu[i].getdatabasescore()); System.out.println(" 5、软件工程成绩:" + chang); System.out.println("********************************************************"); System.out.print(" 该学生成绩已修改完毕,是否提交(Y/N)"); System.out.println("**********************************************************"); if(a.next().equals("Y")) { stu[i].setsoftwarescore(chang); show(stu); } else { change(stu); } break; default: System.out.println("请输入正确信息"); change(stu); break; } flag = 1; } } if (flag == 0) { System.out.println("学号输入错误,请重新输入学号"); change(stu); } } static void jisuan(helloworld[] stu) {//计算学生成绩绩点 System.out.println("******************************************"); System.out.println(" 石家庄铁道大学软件工程系学生学籍管理系统2019版 "); System.out.println(" 学生考试成绩绩点计算界面 "); System.out.println("*******************************************"); System.out.print(" 请输入学生学号:"); Scanner a=new Scanner(System.in); String number=a.nextLine(); System.out.println("*********************************************"); System.out.println("**********************************************"); System.out.println(" 石家庄铁道大学软甲工程系学生学籍管理系统2019版"); System.out.println(" 学生考试成绩绩点计算界面"); System.out.println("************************************************"); System.out.println(" 学生学号:"+number); int i; double gao=0,ying=0,ji=0,shu=0,ruan=0; for(i=0;i<5;i++) if (stu[i].getstunumber().equals(number)) { System.out.println(" 学生姓名:"+stu[i].getname()); //计算高等数学的成绩绩点 if(stu[i].getmathematicsscore()>=90) gao=4.0; else if(stu[i].getmathematicsscore()>=85&&stu[i].getmathematicsscore()<=89.9) gao=3.7; else if(stu[i].getmathematicsscore()>=82&&stu[i].getmathematicsscore()<=84.9) gao=3.3; else if(stu[i].getmathematicsscore()>=78&&stu[i].getmathematicsscore()<=81.9) gao=2.7; else if(stu[i].getmathematicsscore()>=75&&stu[i].getmathematicsscore()<=77.9) gao=2.3; else if(stu[i].getmathematicsscore()>=72&&stu[i].getmathematicsscore()<=74.9) gao=2.0; else if(stu[i].getmathematicsscore()>=68&&stu[i].getmathematicsscore()<=71.9) gao=1.7; else if(stu[i].getmathematicsscore()>=66&&stu[i].getmathematicsscore()<=67.9) gao=1.5; else if(stu[i].getmathematicsscore()>=64&&stu[i].getmathematicsscore()<=65.9) gao=1.0; else if(stu[i].getmathematicsscore()<60) gao=0; System.out.println(" 1.高等数学成绩绩点:"+gao); //计算大学英语成绩绩点 if(stu[i].getenglishiscore()>=90) ying=4.0; else if(stu[i].getenglishiscore()>=85&&stu[i].getenglishiscore()<=89.9) ying=3.7; else if(stu[i].getenglishiscore()>=82&&stu[i].getenglishiscore()<=84.9) ying=3.3; else if(stu[i].getenglishiscore()>=78&&stu[i].getenglishiscore()<=81.9) ying=2.7; else if(stu[i].getenglishiscore()>=75&&stu[i].getenglishiscore()<=77.9) ying=2.3; else if(stu[i].getenglishiscore()>=72&&stu[i].getenglishiscore()<=74.9) ying=2.0; else if(stu[i].getenglishiscore()>=68&&stu[i].getenglishiscore()<=71.9) ying=1.7; else if(stu[i].getenglishiscore()>=66&&stu[i].getenglishiscore()<=67.9) ying=1.5; else if(stu[i].getenglishiscore()>=64&&stu[i].getenglishiscore()<=65.9) ying=1.0; else if(stu[i].getenglishiscore()<60) ying=0; System.out.println(" 2.大学英语成绩绩点:"+ying); //计算计算机网络成绩绩点 if(stu[i].getnetworkscore()>=90) ji=4.0; else if(stu[i].getnetworkscore()>=85&&stu[i].getnetworkscore()<=89.9) ji=3.7; else if(stu[i].getnetworkscore()>=82&&stu[i].getnetworkscore()<=84.9) ji=3.3; else if(stu[i].getnetworkscore()>=78&&stu[i].getnetworkscore()<=81.9) ji=2.7; else if(stu[i].getnetworkscore()>=75&&stu[i].getnetworkscore()<=77.9) ji=2.3; else if(stu[i].getnetworkscore()>=72&&stu[i].getnetworkscore()<=74.9) ji=2.0; else if(stu[i].getnetworkscore()>=68&&stu[i].getnetworkscore()<=71.9) ji=1.7; else if(stu[i].getnetworkscore()>=66&&stu[i].getnetworkscore()<=67.9) ji=1.5; else if(stu[i].getnetworkscore()>=64&&stu[i].getnetworkscore()<=65.9) ji=1.0; else if(stu[i].getnetworkscore()<60) ji=0; System.out.println(" 3.计算机网络成绩绩点:"+ji); //计算数据库成绩绩点 if(stu[i].getdatabasescore()>=90) shu=4.0; else if(stu[i].getdatabasescore()>=85&&stu[i].getdatabasescore()<=89.9) shu=3.7; else if(stu[i].getdatabasescore()>=82&&stu[i].getdatabasescore()<=84.9) shu=3.3; else if(stu[i].getdatabasescore()>=78&&stu[i].getdatabasescore()<=81.9) shu=2.7; else if(stu[i].getdatabasescore()>=75&&stu[i].getdatabasescore()<=77.9) shu=2.3; else if(stu[i].getdatabasescore()>=72&&stu[i].getdatabasescore()<=74.9) shu=2.0; else if(stu[i].getdatabasescore()>=68&&stu[i].getdatabasescore()<=71.9) shu=1.7; else if(stu[i].getdatabasescore()>=66&&stu[i].getdatabasescore()<=67.9) shu=1.5; else if(stu[i].getdatabasescore()>=64&&stu[i].getdatabasescore()<=65.9) shu=1.0; else if(stu[i].getdatabasescore()<60) shu=0; System.out.println(" 4.数据库成绩绩点:"+shu); //计算软件工程成绩绩点 if(stu[i].getdatabasescore()>=90) ruan=4.0; else if(stu[i].getdatabasescore()>=85&&stu[i].getdatabasescore()<=89.9) ruan=3.7; else if(stu[i].getdatabasescore()>=82&&stu[i].getdatabasescore()<=84.9) ruan=3.3; else if(stu[i].getdatabasescore()>=78&&stu[i].getdatabasescore()<=81.9) ruan=2.7; else if(stu[i].getdatabasescore()>=75&&stu[i].getdatabasescore()<=77.9) ruan=2.3; else if(stu[i].getdatabasescore()>=72&&stu[i].getdatabasescore()<=74.9) ruan=2.0; else if(stu[i].getdatabasescore()>=68&&stu[i].getdatabasescore()<=71.9) ruan=1.7; else if(stu[i].getdatabasescore()>=66&&stu[i].getdatabasescore()<=67.9) ruan=1.5; else if(stu[i].getdatabasescore()>=64&&stu[i].getdatabasescore()<=65.9) ruan=1.0; else if(stu[i].getdatabasescore()<60) ruan=0; System.out.println(" 5.软件工程成绩绩点:"+ruan); //计算平均学分绩点 double average=0; average=(gao*4+ying*3+ji*4+shu*3+ruan*2)/16; String result=String.format("%.2f",average); System.out.println(" 你的平均学分绩点为:"+result); if(average>=2) System.out.println("提示信息:你的学分绩点已达到毕业要求!"); else System.out.println("提示信息:你的学分绩点不满足毕业要求!"); System.out.println(" 是否返回系统主界面:(Y/N)"); System.out.println("**************************************"); if(a.next().equals("Y")) { show(stu); } else break; } } static void finish() {//退出当前程序 System.out.println("********************************************"); System.out.println(" 石家庄铁道大学软件工程系学生学籍管理系统2019版"); System.out.println(" 制作人:冯静妃"); System.out.println("********************************************"); } }
录入成绩运行结果:
修改成绩运行结果:
计算绩点运行结果:
退出系统运行结果:
这个学生成绩录入、修改、计算系统的代码并不难,大概思路就是创建学生信息类,在主函数下面,构造录入、修改、计算函数,但是我一下午也没写完。我想归根结底的原因还是,动手练习的太少,假期的时间没有充分利用,所有的学习时间内,几乎都是在看书,而不是敲代码,我认为这是最致命的不足。有了这一次印象深刻的经历,在之后的学习中,还是应该多动手,坚持每天抽出时间来练习,重复做题变熟练,增加经验,提高手速,利用好空闲时间。