2017-04-06 41 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 
    }