請各位大大幫幫忙...
小弟要考試了..
可是看了很久..還是不知道怎麼寫
感恩啦~~
P.S 語言為JAVA
一、 建立一個「成績類別」,包含:
資料成員:
A 姓名(字串)
B 國文、英文成績(整數)
C 總分(整數) 平均(浮點數)
D 「加分」數(整數)
E 等級(字串)
方法成員:
A 只帶姓名之建構子(預設國文、英文都為0分)
B 帶入姓名、國文、英文 三個參數之建構子
C 設定分數的方法,帶入國文及英文成績
D 列印成績的方法,印出姓名、國文、英文、總分、平均、等級
(列印前先呼叫「計算成績」之方法)
E 計算成績的方法(類別內部使用),根據國文及英文成績算出總分、平均
然後加上「加分」得到的最後之平均(最高為100分)
最後再根據平均判斷等級(>=80:甲,<60:丙,其他:乙等)
二、 主程式
A 建立兩個成績物件,物件1(預設姓名為”你的名字”),物件2(預設姓名為”YSP”,國文:60分,英文:70分)
B 輸入物件1的國文成績及英文成績
C 輸入「加分」數
D 設定「加入」數
E 列印物件1及物件1的資料
2007-01-08 18:25:56 · 1 個解答 · 發問者 小魁 2 in 電腦與網際網路 ➔ 程式設計
請參考我的做法
public class Grade {
String name;
int chGde;
int enGde;
int total;
double avg;
int grant;
String lvl;
public Grade(String s) {
name = s;
}
public Grade(String s, int x, int y) {
name = s;
chGde = x;
enGde = y;
}
public void setGrade(int x, int y) {
chGde = x;
enGde = y;
}
public void setGrant(int x) {
grant = x;
}
public void printGrade() {
System.out.println(name + "\t" + chGde + "\t" + enGde + "\t" + total +
"\t" + avg + "\t" + lvl);
}
private void cal() {
total = chGde + enGde;
avg = (double)total / 2;
avg += grant;
if (avg >= 80) lvl = "甲";
else if (avg < 60) lvl = "丙";
else lvl = "乙";
}
public static void main(String[] args) {
Grade g1 = new Grade("我是誰");
Grade g2 = new Grade("YSP", 60, 70);
g1.setGrade(18, 89);
g1.setGrant(1);
g2.setGrant(2);
g1.cal();
g2.cal();
System.out.println("姓名\t國文\t英文\t總分\t平均\t等級");
g1.printGrade();
g2.printGrade();
}
}
2007-01-09 08:18:04 · answer #1 · answered by ? 7 · 0⤊ 0⤋