小編給大家分享一下Java如何實現(xiàn)簡易學(xué)生成績系統(tǒng),相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
專注于為中小企業(yè)提供成都做網(wǎng)站、成都網(wǎng)站建設(shè)、成都外貿(mào)網(wǎng)站建設(shè)服務(wù),電腦端+手機(jī)端+微信端的三站合一,更高效的管理,為中小企業(yè)洪澤免費(fèi)做網(wǎng)站提供優(yōu)質(zhì)的服務(wù)。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動了數(shù)千家企業(yè)的穩(wěn)健成長,幫助中小企業(yè)通過網(wǎng)站建設(shè)實現(xiàn)規(guī)模擴(kuò)充和轉(zhuǎn)變。
剛剛接觸Java不久,寫法上和一些術(shù)語還不是很熟悉,如有不對的地方,希望指正。本次學(xué)生成績系統(tǒng)要求能實現(xiàn)成績錄入,修改成績,績點計算,退出系統(tǒng)四個功能,在進(jìn)行思路分析后,我構(gòu)建了三個大類:ScoreInformation類;Surface類;Main類。
一,ScoreInformation類:
public class ScoreInformation { private String stunumber; //學(xué)號 private String name; //姓名 private double mathematicsscore; //高數(shù)成績 private double englishscore; //大學(xué)英語成績 private double networkscore; //計算機(jī)網(wǎng)絡(luò)成績 private double databasescore; //數(shù)據(jù)庫成績 private double softwarescore; //軟件工程成績 public void setStunumber(String stunumber){ this.stunumber = stunumber; } public String getStunumber(){ return stunumber; } public void setName(String name){ this.name = name; } public String getName(){ return name; } public void setMath(double mathematicssore){ this.mathematicsscore = mathematicssore; } public double getMath(){ return mathematicsscore; } public void setEng(double englishscore){ this.englishscore = englishscore; } public double getEng(){ return englishscore; } public void setNet(double networkscore){ this.networkscore = networkscore; } public double getNet(){ return networkscore; } public void setData(double databasescore){ this.databasescore = databasescore; } public double getData(){ return databasescore; } public void setSoft(double softwarescore){ this.softwarescore = softwarescore; } public double getSoft(){ return softwarescore; } public ScoreInformation(){ stunumber = "XXXXXXXX";//原代碼錄入的是我個人的信息,暫改為X name = "XXX"; mathematicsscore = 0; englishscore = 0; networkscore = 0; databasescore = 0; softwarescore = 0; } public ScoreInformation(String stunumber,String name){ this.stunumber = stunumber; this.name = name; this.mathematicsscore = 0; this.englishscore = 0; this.networkscore = 0; this.databasescore = 0; this.softwarescore = 0; }}
ScoreInformation類用于存儲信息,按題目要求,含7個私有變量。其中set和get函數(shù)分別用來設(shè)置和讀取對應(yīng)變量的值。本類中設(shè)置了兩個構(gòu)造方法,應(yīng)老師的要求,無參默認(rèn)我自己的學(xué)號和姓名,有參則自行設(shè)置學(xué)號和姓名,成績均默認(rèn)為0。
二,Surface類:
public class Surface { public void mainsur(){ System.out.println("***********************************************************"); System.out.println(" 石家莊鐵道大學(xué)軟件工程系 "); System.out.println(" 學(xué)生學(xué)籍管理系統(tǒng) 2019 版 "); System.out.println("***********************************************************"); System.out.println(" 1、 學(xué)生考試成績錄入 "); System.out.println(" 2、 學(xué)生考試成績修改 "); System.out.println(" 3、 計算學(xué)生成績績點 "); System.out.println(" 4、 退出學(xué)籍管理系統(tǒng) "); System.out.println("***********************************************************"); } public void inStun(){ System.out.println("***********************************************************"); System.out.println(" 石家莊鐵道大學(xué)軟件工程系學(xué)生學(xué)籍管理系統(tǒng) 2019 版 "); System.out.println(" 學(xué)生考試成績錄入"); System.out.println("***********************************************************"); System.out.println(" 請輸入學(xué)生學(xué)號:"); System.out.println("***********************************************************"); } public void inMath(ScoreInformation s){ System.out.println("***********************************************************"); System.out.println(" 石家莊鐵道大學(xué)軟件工程系學(xué)生學(xué)籍管理系統(tǒng) 2019 版 "); System.out.println(" 學(xué)生考試成績錄入界面"); System.out.println("***********************************************************"); System.out.println(" 學(xué)生學(xué)號:"+s.getStunumber()); System.out.println(" 學(xué)生姓名:"+s.getName()); System.out.println(" 請輸入高等數(shù)學(xué)成績:"); System.out.println("***********************************************************"); } public void inEng(ScoreInformation s){ System.out.println("***********************************************************"); System.out.println(" 石家莊鐵道大學(xué)軟件工程系學(xué)生學(xué)籍管理系統(tǒng) 2019 版 "); System.out.println(" 學(xué)生考試成績錄入界面"); System.out.println("***********************************************************"); System.out.println(" 學(xué)生學(xué)號:"+s.getStunumber()); System.out.println(" 學(xué)生姓名:"+s.getName()); System.out.println(" 高等數(shù)學(xué)成績:"+s.getMath()); System.out.println(" 請輸入大學(xué)英語成績:"); System.out.println("***********************************************************"); } public void inNet(ScoreInformation s){ System.out.println("***********************************************************"); System.out.println(" 石家莊鐵道大學(xué)軟件工程系學(xué)生學(xué)籍管理系統(tǒng) 2019 版 "); System.out.println(" 學(xué)生考試成績錄入界面"); System.out.println("***********************************************************"); System.out.println(" 學(xué)生學(xué)號:"+s.getStunumber()); System.out.println(" 學(xué)生姓名:"+s.getName()); System.out.println(" 高等數(shù)學(xué)成績:"+s.getMath()); System.out.println(" 大學(xué)英語成績:"+s.getEng()); System.out.println(" 請輸入計算機(jī)網(wǎng)絡(luò)成績:"); System.out.println("***********************************************************"); } public void inData(ScoreInformation s){ System.out.println("***********************************************************"); System.out.println(" 石家莊鐵道大學(xué)軟件工程系學(xué)生學(xué)籍管理系統(tǒng) 2019 版 "); System.out.println(" 學(xué)生考試成績錄入界面"); System.out.println("***********************************************************"); System.out.println(" 學(xué)生學(xué)號:"+s.getStunumber()); System.out.println(" 學(xué)生姓名:"+s.getName()); System.out.println(" 高等數(shù)學(xué)成績:"+s.getMath()); System.out.println(" 大學(xué)英語成績:"+s.getEng()); System.out.println(" 計算機(jī)網(wǎng)絡(luò)成績:"+s.getNet()); System.out.println(" 請輸入數(shù)據(jù)庫成績:"); System.out.println("***********************************************************"); } public void inSoft(ScoreInformation s){ System.out.println("***********************************************************"); System.out.println(" 石家莊鐵道大學(xué)軟件工程系學(xué)生學(xué)籍管理系統(tǒng) 2019 版 "); System.out.println(" 學(xué)生考試成績錄入界面"); System.out.println("***********************************************************"); System.out.println(" 學(xué)生學(xué)號:"+s.getStunumber()); System.out.println(" 學(xué)生姓名:"+s.getName()); System.out.println(" 高等數(shù)學(xué)成績:"+s.getMath()); System.out.println(" 大學(xué)英語成績:"+s.getEng()); System.out.println(" 計算機(jī)網(wǎng)絡(luò)成績:"+s.getNet()); System.out.println(" 數(shù)據(jù)庫成績:"+s.getData()); System.out.println(" 請輸入軟件工程成績:"); System.out.println("***********************************************************"); } public void inall(ScoreInformation s){ System.out.println("***********************************************************"); System.out.println(" 石家莊鐵道大學(xué)軟件工程系學(xué)生學(xué)籍管理系統(tǒng) 2019 版 "); System.out.println(" 學(xué)生考試成績錄入"); System.out.println("***********************************************************"); System.out.println(" 學(xué)生學(xué)號:"+s.getStunumber()); System.out.println(" 學(xué)生姓名:"+s.getName()); System.out.println(" 高等數(shù)學(xué)成績:"+s.getMath()); System.out.println(" 大學(xué)英語成績:"+s.getEng()); System.out.println(" 計算機(jī)網(wǎng)絡(luò)成績:"+s.getNet()); System.out.println(" 數(shù)據(jù)庫成績:"+s.getData()); System.out.println(" 軟件工程成績:"+s.getSoft()); System.out.println(" 該學(xué)生成績已錄入完畢,是否提交(Y/N)"); System.out.println("***********************************************************"); } public void changeStun(){ System.out.println("***********************************************************"); System.out.println(" 石家莊鐵道大學(xué)軟件工程系學(xué)生學(xué)籍管理系統(tǒng) 2019 版 "); System.out.println(" 學(xué)生考試成績修改界面"); System.out.println("***********************************************************"); System.out.println(" 請輸入學(xué)生學(xué)號:"); System.out.println("***********************************************************"); } public void outscore(ScoreInformation s){ System.out.println("***********************************************************"); System.out.println(" 石家莊鐵道大學(xué)軟件工程系學(xué)生學(xué)籍管理系統(tǒng) 2019 版 "); System.out.println(" 學(xué)生考試成績錄入"); System.out.println("***********************************************************"); System.out.println(" 學(xué)生學(xué)號:"+s.getStunumber()); System.out.println(" 學(xué)生姓名:"+s.getName()); System.out.println(" 1,高等數(shù)學(xué)成績:"+s.getMath()); System.out.println(" 2,大學(xué)英語成績:"+s.getEng()); System.out.println(" 3,計算機(jī)網(wǎng)絡(luò)成績:"+s.getNet()); System.out.println(" 4,數(shù)據(jù)庫成績:"+s.getData()); System.out.println(" 5,軟件工程成績:"+s.getSoft()); System.out.println("***********************************************************"); } public void changeMath(ScoreInformation s){ System.out.println("***********************************************************"); System.out.println(" 石家莊鐵道大學(xué)軟件工程系學(xué)生學(xué)籍管理系統(tǒng) 2019 版 "); System.out.println(" 學(xué)生考試成績錄入界面"); System.out.println("***********************************************************"); System.out.println(" 學(xué)生學(xué)號:"+s.getStunumber()); System.out.println(" 學(xué)生姓名:"+s.getName()); System.out.println(" 請輸入修改后高等數(shù)學(xué)成績:"); System.out.println("***********************************************************"); } public void changeEng(ScoreInformation s){ System.out.println("***********************************************************"); System.out.println(" 石家莊鐵道大學(xué)軟件工程系學(xué)生學(xué)籍管理系統(tǒng) 2019 版 "); System.out.println(" 學(xué)生考試成績錄入界面"); System.out.println("***********************************************************"); System.out.println(" 學(xué)生學(xué)號:"+s.getStunumber()); System.out.println(" 學(xué)生姓名:"+s.getName()); System.out.println(" 請輸入修改后大學(xué)英語成績:"); System.out.println("***********************************************************"); } public void changeNet(ScoreInformation s){ System.out.println("***********************************************************"); System.out.println(" 石家莊鐵道大學(xué)軟件工程系學(xué)生學(xué)籍管理系統(tǒng) 2019 版 "); System.out.println(" 學(xué)生考試成績錄入界面"); System.out.println("***********************************************************"); System.out.println(" 學(xué)生學(xué)號:"+s.getStunumber()); System.out.println(" 學(xué)生姓名:"+s.getName()); System.out.println(" 請輸入修改后計算機(jī)網(wǎng)絡(luò)成績:"); System.out.println("***********************************************************"); } public void changeData(ScoreInformation s){ System.out.println("***********************************************************"); System.out.println(" 石家莊鐵道大學(xué)軟件工程系學(xué)生學(xué)籍管理系統(tǒng) 2019 版 "); System.out.println(" 學(xué)生考試成績錄入界面"); System.out.println("***********************************************************"); System.out.println(" 學(xué)生學(xué)號:"+s.getStunumber()); System.out.println(" 學(xué)生姓名:"+s.getName()); System.out.println(" 請輸入修改后數(shù)據(jù)庫成績:"); System.out.println("***********************************************************"); } public void changeSoft(ScoreInformation s){ System.out.println("***********************************************************"); System.out.println(" 石家莊鐵道大學(xué)軟件工程系學(xué)生學(xué)籍管理系統(tǒng) 2019 版 "); System.out.println(" 學(xué)生考試成績錄入界面"); System.out.println("***********************************************************"); System.out.println(" 學(xué)生學(xué)號:"+s.getStunumber()); System.out.println(" 學(xué)生姓名:"+s.getName()); System.out.println(" 請輸入修改后軟件工程成績:"); System.out.println("***********************************************************"); } public void overchange(ScoreInformation s){ System.out.println("***********************************************************"); System.out.println(" 石家莊鐵道大學(xué)軟件工程系學(xué)生學(xué)籍管理系統(tǒng) 2019 版 "); System.out.println(" 學(xué)生考試成績錄入"); System.out.println("***********************************************************"); System.out.println(" 學(xué)生學(xué)號:"+s.getStunumber()); System.out.println(" 學(xué)生姓名:"+s.getName()); System.out.println(" 1,高等數(shù)學(xué)成績:"+s.getMath()); System.out.println(" 2,大學(xué)英語成績:"+s.getEng()); System.out.println(" 3,計算機(jī)網(wǎng)絡(luò)成績:"+s.getNet()); System.out.println(" 4,數(shù)據(jù)庫成績:"+s.getData()); System.out.println(" 5,軟件工程成績:"+s.getSoft()); System.out.println(" 該學(xué)生成績已修改完畢,是否提交(Y/N)"); System.out.println("***********************************************************"); } public void startgrade(){ System.out.println("***********************************************************"); System.out.println(" 石家莊鐵道大學(xué)軟件工程系學(xué)生學(xué)籍管理系統(tǒng) 2019 版 "); System.out.println(" 學(xué)生考試成績績點計算界面"); System.out.println("***********************************************************"); System.out.println(" 請輸入學(xué)生學(xué)號:"); System.out.println("***********************************************************"); } public void endscore1(ScoreInformation s, double a){ System.out.println("***********************************************************"); System.out.println(" 石家莊鐵道大學(xué)軟件工程系學(xué)生學(xué)籍管理系統(tǒng) 2019 版 "); System.out.println(" 學(xué)生考試成績績點計算界面"); System.out.println("***********************************************************"); System.out.println(" 學(xué)生學(xué)號:"+s.getStunumber()); System.out.println(" 學(xué)生姓名:"+s.getName()); System.out.println(" 1,高等數(shù)學(xué)成績:"+s.getMath()); System.out.println(" 2,大學(xué)英語成績:"+s.getEng()); System.out.println(" 3,計算機(jī)網(wǎng)絡(luò)成績:"+s.getNet()); System.out.println(" 4,數(shù)據(jù)庫成績:"+s.getData()); System.out.println(" 5,軟件工程成績:"+s.getSoft()); System.out.print(" 你的平均學(xué)分績點為:"); System.out.println(String.format("%.2f", a)); System.out.println(" 提示信息:你的學(xué)分績點已達(dá)到畢業(yè)要求!"); System.out.println(" 是否返回系統(tǒng)主界面:(Y/N)"); System.out.println("***********************************************************"); } public void endscore2(ScoreInformation s, double a){ System.out.println("***********************************************************"); System.out.println(" 石家莊鐵道大學(xué)軟件工程系學(xué)生學(xué)籍管理系統(tǒng) 2019 版 "); System.out.println(" 學(xué)生考試成績績點計算界面"); System.out.println("***********************************************************"); System.out.println(" 學(xué)生學(xué)號:"+s.getStunumber()); System.out.println(" 學(xué)生姓名:"+s.getName()); System.out.println(" 1,高等數(shù)學(xué)成績:"+s.getMath()); System.out.println(" 2,大學(xué)英語成績:"+s.getEng()); System.out.println(" 3,計算機(jī)網(wǎng)絡(luò)成績:"+s.getNet()); System.out.println(" 4,數(shù)據(jù)庫成績:"+s.getData()); System.out.println(" 5,軟件工程成績:"+s.getSoft()); System.out.print(" 你的平均學(xué)分績點為:"); System.out.println(String.format("%.2f", a)); System.out.println(" 提示信息:你的學(xué)分績點不滿足畢業(yè)要求!"); System.out.println(" 是否返回系統(tǒng)主界面:(Y/N)"); System.out.println("***********************************************************"); } public void endsur(){ System.out.println("***********************************************************"); System.out.println(" 謝謝使用石家莊鐵道大學(xué)軟件工程系學(xué)生學(xué)籍管理系統(tǒng) 2019 版 "); System.out.println(" 制作人:樸遠(yuǎn)東"); System.out.println("***********************************************************"); }}
為了能讓代碼更容易檢查,我特意將所有關(guān)于界面顯示的方法歸類到Surface類里。這個類里只有顯示界面的功能代碼,無其他作用
三,Main類:
import java.util.Scanner;public class Main { static Surface x = new Surface(); //調(diào)用界面類 static Scanner in = new Scanner(System.in); public void stem1(ScoreInformation a[]){ //執(zhí)行學(xué)生成績錄入操作 int temp1 = 0; x.inStun(); String m = in.next(); for(int i = 0; i < 5; i++){ if(a[i].getStunumber().equals(m)) { x.inMath(a[i]); double d1 = in.nextDouble(); a[i].setMath(d1); x.inEng(a[i]); double d2 = in.nextDouble(); a[i].setEng(d2); x.inNet(a[i]); double d3 = in.nextDouble(); a[i].setNet(d3); x.inData(a[i]); double d4 = in.nextDouble(); a[i].setData(d4); x.inSoft(a[i]); double d5 = in.nextDouble(); a[i].setSoft(d5); x.inall(a[i]); String c = in.next(); if(c.equals("N")){ a[i].setMath(0); a[i].setEng(0); a[i].setNet(0); a[i].setData(0); a[i].setSoft(0); } x.mainsur(); temp1 = 1; break; } } if(temp1 == 0) { System.out.println("該學(xué)號不存在"); x.mainsur(); } } public void stem2(ScoreInformation a[]){ //執(zhí)行學(xué)生成績修改操作。 int temp1 = 0; double r1,r2,r3,r4,r5; x.changeStun(); String m = in.next(); for(int i = 0; i < 5; i++){ if(a[i].getStunumber().equals(m)) { r1 = a[i].getMath(); r2 = a[i].getEng(); r3 = a[i].getNet(); r4 = a[i].getData(); r5 = a[i].getSoft(); x.outscore(a[i]); int c = in.nextInt(); switch(c){ case 1: x.changeMath(a[i]); double d1 = in.nextDouble(); a[i].setMath(d1); break; case 2: x.changeEng(a[i]); double d2 = in.nextDouble(); a[i].setEng(d2); break; case 3: x.changeNet(a[i]); double d3 = in.nextDouble(); a[i].setNet(d3); break; case 4: x.changeData(a[i]); double d4 = in.nextDouble(); a[i].setData(d4); break; case 5: x.changeSoft(a[i]); double d5 = in.nextDouble(); a[i].setSoft(d5); break; default: System.out.println("無該選項,返回主界面"); x.mainsur(); break; } x.overchange(a[i]); String h = in.next(); if(h.equals("N")){ a[i].setMath(r1); a[i].setEng(r2); a[i].setNet(r3); a[i].setData(r4); a[i].setSoft(r5); } x.mainsur(); temp1 = 1; break; } } if(temp1 == 0) { System.out.println("該學(xué)號不存在"); x.mainsur(); } } public void stem3(ScoreInformation a[]){ //執(zhí)行績點計算操作 Main v = new Main(); double R; double r1,r2,r3,r4,r5; double x1,x2,x3,x4,x5; x.startgrade(); String m = in.next(); for(int i = 0; i < 5; i++){ if(a[i].getStunumber().equals(m)) { r1 = a[i].getMath();x1 = v.Gpoint(r1); r2 = a[i].getEng();x2 = v.Gpoint(r2); r3 = a[i].getNet();x3 = v.Gpoint(r3); r4 = a[i].getData();x4 = v.Gpoint(r4); r5 = a[i].getSoft();x5 = v.Gpoint(r5); R = (x1*r1+x2*r2+x3*r3+x4*r4+x5*r5)/(r1+r2+r3+r4+r5); if(R>=2){ x.endscore1(a[i], R); }else{ x.endscore2(a[i], R); } String q = in.next(); if(q.equals("Y")){ x.mainsur(); } break; } } } public double Gpoint(double d){ //返回學(xué)分對應(yīng)的績點 double e = 0; if(d>=90.0) e = 4.0; else if(d>=85&&d<=89.9) e = 3.7; else if(d>=82&&d<=84.9) e = 3.3; else if(d>=78&&d<=81.9) e = 3.0; else if(d>=75&&d<=77.9) e = 2.7; else if(d>=72&&d<=74.9) e = 2.3; else if(d>=68&&d<=71.9) e = 2.0; else if(d>=66&&d<=67.9) e = 1.7; else if(d>=64&&d<=65.9) e = 1.5; else if(d>=60&&d<=63.9) e = 1.0; else if(d<60) e = 0; return e; } public static void main(String[] args) { Main u = new Main(); ScoreInformation a[] = new ScoreInformation[5]; a[0] = new ScoreInformation(); a[1] = new ScoreInformation("20180001","小趙"); a[2] = new ScoreInformation("20180002","小張"); a[3] = new ScoreInformation("20180003","小王"); a[4] = new ScoreInformation("20180004","小李"); int temp = 0; x.mainsur(); int T = in.nextInt(); while(temp == 0){ //重復(fù)調(diào)用 switch(T){ case 1: u.stem1(a); T = in.nextInt(); break; case 2: u.stem2(a); T = in.nextInt(); break; case 3: u.stem3(a); T = in.nextInt(); break; case 4: x.endsur(); temp = 1; break; default: System.out.println("該選項不存在"); x.mainsur(); temp = 1; break; } } in.close(); }}
這個類就是主函數(shù)類了,用于實現(xiàn)各種操作。因為涉及到輸入的問題,所以使用了Scanner。老師為我們放寬了要求,輸入5位同學(xué)的信息即可,更改也是比較方便的,可以根據(jù)實際情況來進(jìn)行對象數(shù)組的分配,在此就不多說了。題目中的系統(tǒng)是要重復(fù)調(diào)用的,又有4個選項,因此我選擇while+switch兩個結(jié)構(gòu)來實現(xiàn)。代碼中聲明的Main和Surface類的對象,主要目的是在于調(diào)用MaIn和Surface類中的方法,操作數(shù)據(jù)都是ScoreInformation類的對象。在Main類中,stem1,stem2,stem3三個方法對應(yīng)的是1-3的選項,將不同的實現(xiàn)操作分裝在不同的方法里,目的是讓代碼看著更加清晰。最后,代碼中多次出現(xiàn)的int型變量temp/temp1是我用來作為if判斷的標(biāo)志,根據(jù)它的值來決定接下來的操作,這是我個人的編寫習(xí)慣,退出循環(huán)或者其他情況都會設(shè)置一個變量進(jìn)行判斷。
以上是“Java如何實現(xiàn)簡易學(xué)生成績系統(tǒng)”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學(xué)習(xí)更多知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!
本文題目:Java如何實現(xiàn)簡易學(xué)生成績系統(tǒng)
路徑分享:http://www.rwnh.cn/article26/jsdjcg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供全網(wǎng)營銷推廣、網(wǎng)站制作、外貿(mào)網(wǎng)站建設(shè)、企業(yè)建站、網(wǎng)站導(dǎo)航、品牌網(wǎng)站設(shè)計
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)