【发布时间】:2013-10-09 05:25:31
【问题描述】:
我正在进行关于数组的练习,而我目前被困在其中的一种变体中
- 我必须使用一个数组(没有数组列表)来收集用户输入 100 个输入的最大数量,如果一个负数,输入必须停止 号码已插入。
- 然后程序将用户输入的每个值打印在单独的 与平均值相关的“Above”、“Below”或“EqualTo”一致 的输入。
问题:- 我目前陷入困境,我应该如何将来自加载方法的输入值放入打印方法的正确位置。该程序将编译,但只会返回一个等于 0 的 average1。任何帮助表示赞赏,我只是不能使用数组列表
import java.util.Scanner;
public class ScoreSetNumber3
{
private int[] scores;
private static final int SIZE= 100;
private double average1;
Scanner keyboard = new Scanner(System.in);
public ScoreSetNumber3()
{
scores = new int[SIZE];
}
public void load()
{
System.out.println("Please enter scores");
double sum = 0;
for( int used = 0; used < scores.length; used++)
{
scores[used] = keyboard.nextInt();
if(scores[used] >= 0)
{
sum += scores[used];
}
else
{
System.out.println("End of Inputs");
double average1 = sum / used;
System.out.println("Average value of array elements is" + " " + average1);
break;
}
}
}
public double getAverage()
{
return average1;
}
public void print()
{
for(int used=0; used < scores.length; used++)
{
if(scores[used] > getAverage())
{
System.out.println(scores[used] + " Above");
}
else if(scores[used] == getAverage())
{
System.out.println(scores[used] + " EqualTo");
}
else
{
if(scores[used] < 0)
{
break;
}
System.out.println(scores[used] + " Below");
}
}
}
}
【问题讨论】:
标签: java variables for-loop methods average