【发布时间】:2014-02-10 14:21:59
【问题描述】:
我正在尝试为我的 java 类创建这个相当简单的程序。一切正常,除了当我试图有一个输入循环。我以前从未这样做过,它忽略了所有其他输入。下面是问题提示:
B.通道。 4 – 平均 - 编写一个程序,该程序将读取未指定数量的整数成绩并找到汇总总数和平均值。打印成绩、总成绩和平均成绩。最后一条记录将是 -1 的预告片记录。同时输出每个教学大纲评分标准的最终字母等级。
这里是代码:
import java.util.Scanner;
public class Average
{
public static void main(String[] args)
{
Scanner in = new Scanner(System.in);
float counter = 0;
float accum = 0;
float addAccum = 0;
float tempLoop = 0;
System.out.println("Please Enter Grade, Enter -1 to Finish: ");
while (tempLoop != -1)
{
addAccum = in.nextFloat();
counter++;
accum = addAccum + accum;
tempLoop = in.nextFloat();
}
float avgGrade = accum / counter;
if(avgGrade >= 90)
{
System.out.println("\nYour Grade is: " + "A");
}else if(avgGrade >=80)
{
System.out.println("\nYour Grade is: " + "B");
}else if(avgGrade >=70)
{
System.out.println("\nYour Grade is: " + "C");
}else if(avgGrade >=60)
{
System.out.println("\nYour Grade is: " + "D");
}else
{
System.out.println("\nYour Grade is: " + "F");
}
System.out.println("\nGrade Total: " + accum);
System.out.println("\nCounter Num :" + counter); // for testing only
System.out.println("\nAverage Grade: " + avgGrade);
}
}
这是控制台输入/输出:
Please Enter Grade, Enter -1 to Finish:
100
100
100
100
100
100
-1
-1
Your Grade is: C
Grade Total: 299.0
Counter Num :4.0
Average Grade: 74.75
【问题讨论】:
-
尝试使用 do/while 循环。
Do要求用户输入等级While等级不是-1。