感謝您的幫助。使用Java陣列獲取最小和最大
這裏是分配:
計算機技術指導員有一個小班的10名學生。教師通過管理2個期中考試和期末考試來評估班上學生的表現。 編寫一個程序,提示教師輸入中期1的10個等級,並將這些數字存儲在一個數組中。接下來提示中期2的10個等級,並將這些數字存儲在不同的數組中。接下來提示進行期末考試的10個等級,並將其存儲在不同的陣列中。接下來添加midterm1到midterm2到Final,並將總計存儲在不同的數組中。 接下來,掃描包含總數的數組,並確定最低等級和最高等級。告知教師最低等級和最高等級。
這兩個大膽的短語是我有問題的地方。除了最低等級和最高等級之外,一切都有效。這裏是它告訴我,之後我只有65和100之間輸入的數字:
最高測試成績爲:276,最低測試成績爲:249
這裏是我的代碼:
import java.util.Scanner;
public class Arrays {
public static void main(String[] args) {
// Create a scanner
Scanner input = new Scanner(System.in);
// Prompt for the 1st mid term
int [] midTerm1 = new int[10];
int [] midTerm2 = new int[10];
int [] finalExam = new int[10];
int [] grades = new int[10];
for (int i = 0; i < midTerm1.length; i++){
System.out.println("Enter the 10 Mid Term 1 grades: ");
midTerm1[i] = input.nextInt();
}
// Prompt for the 2nd mid term
for (int i = 0; i < midTerm2.length; i++){
System.out.println("Enter the 10 Mid Term 2 grades: ");
midTerm2[i] = input.nextInt();
}
// Prompt for Final grades
for (int i = 0; i < finalExam.length; i++){
System.out.println("Please enter a Final Exam grade: ");
finalExam[i] = input.nextInt();
}
for (int i = 0; i < grades.length; i++){
grades[i] = (midTerm1[i] + midTerm2[i] + finalExam[i]);
}
int minGrade = grades[0];
int maxGrade = grades[0];
for (int i = 0; i < grades.length; i++)
{
if (minGrade > grades[i])
minGrade = grades[i];
if (maxGrade < grades[i])
maxGrade = grades[i];
}
System.out.print("The highest test score is: " + maxGrade);
System.out.print("The lowest test score is: " + minGrade);
}
}
基於這些指令,它似乎並不像最小和最大應該是它似乎65和100之間並不像它想讓他們被平均或以任何方式,它只是總想加權。 – 2013-03-10 20:55:31
@AlliK:謝謝,是的,我同意,這就是爲什麼我編輯了我的答案並添加了最後一行。 – 2013-03-10 20:58:07
我覺得@Christf不知道該代碼是正確的,雖然基於這些指令,所以我只是想指出這一點。最小和最大的代碼是正確的。 – 2013-03-10 21:02:24