2017-04-06 38 views
-1

我有這個任務,我需要用Java創建一個for-loop來計算每個學生的平均分數。教師必須輸入每個學生的考試分數,然後循環將對每個學生進行迭代。for loop來計算學生的平均分數。我的平均值不斷加起來

import java.util.Scanner; 
public class average { 

    public static void main(String[] args) { 

     int count = 0; 
     int student; 
     int sum = 0; 
     int grade; 
     int average = 0; 
     Scanner keyboard = new Scanner(System.in); 

     System.out.println("Enter the number of students:"); 
     student = keyboard.nextInt(); 

     System.out.println("Enter number of test scores per student: "); 
     count = keyboard.nextInt(); 

     for (int s = 0; s < student; s++) { 
      System.out.println("Student number " + (s + 1)); 

      for (int i = 0; i < count; i++) { 
       System.out.println("Enter score no." + (i + 1) + " : "); 
       grade = keyboard.nextInt(); 
       sum += grade; 
       average = sum/count; 

      } 

      System.out.println("The average is " + average); 
     } 
    } 
} 
+0

了'sum'重置爲0,在每次迭代 –

+0

那麼是什麼問題? – sm4

+0

'count'似乎總是等於'1'。 –

回答

0

製作總和= 0印刷之後平均值

就顯示在下面的循環

for (int s = 0; s < student; s++) { 
     System.out.println("Student number " + (s + 1)); 


     for (int i = 0; i < count; i++) { 
      System.out.println("Enter score no." + (i + 1) + " : "); 
      grade = keyboard.nextInt(); 
      sum += grade; 
      average = sum/count; 

     } 

     System.out.println("The average is " + average); 

     sum = 0; //THIS IS REQUIRED 
    }