【发布时间】:2019-09-28 07:04:44
【问题描述】:
我不明白 for 循环是如何工作的以及它在做什么。该代码用于一个项目,该项目对用户的测试分数进行平均,并且基于他想要输入的测试分数。
我知道程序返回的输入与用户要求的一样多,但我不知道 for 循环是如何做到的。我试图了解它是如何运作的以及它在做什么。
import java.util.Scanner;
public class average
{
public static String getLetterGrade(double average) {
if (average < 60) {
return "F";
} else if (average < 70) {
return "D";
} else if (average < 80) {
return "C";
} else if (average < 90){
return "B";
}
else;{
return "A";
}
}
public static void main(String[] args){
Scanner scan = new Scanner(System.in);
System.out.println("Welcome, please type your first name. ");
String name = scan.nextLine();
System.out.println("Welcome, please type your last name. ");
String last = scan.nextLine();
int n;
System.out.println("How many tests would you like the average of?");
n = scan.nextInt();
while(n<0)
{
System.out.println("Invalid input.");
System.out.println("How many tests would you like the average
of?");
n = scan.nextInt();
}
double sum = 0, grade;
System.out.println("Enter " + n + " scores.");
for(int i = 0;i<n;i++)
{
grade = scan.nextDouble();
sum += grade;
}
double average = (sum/n);
System.out.println("Okay " + name.charAt(0) + last.charAt(0) + ", Your
average score is " + (average));
System.out.println("Your letter grade is " + getLetterGrade(average));
}
}
程序运行正常,没有错误。我正在尝试了解 for 循环是如何工作的。
【问题讨论】: