所以我有一个0-4的数组,它有5个随机整数值(即10,20,25,15,50)。程序要求用户输入一个整数,让用户输入17.程序将检查并使用我所拥有的数组中的5个值并打印出大于用户输入的数字,在这种情况下为17 (我使用for循环来做到这一点)。我还想打印出大于用户输入的数字的数量,在这种情况下为2(数字大于17)。我该怎么做呢?我是否在第一个for循环中写了一个for循环?
int[] myArrays = new int[10,20,25,15,50];
int numEntered;
for (i = 0; i < myArrays.length; i++)
{
if (myArrays[i] > numEntered)
System.out.println(myArrays[i]);
}
现在我如何获得大于用户输入的总数?
答案 0 :(得分:2)
只需要一个正在运行的总计数器。
int counter = 0;
然后,只要您找到的数字大于用户输入的数字,请使用counter++;
递增计数器。然后在你的for循环后打印出计数器的值。
这应该足以让你解决家庭作业,而不会泄露太多。
答案 1 :(得分:0)
你走在正确的轨道上;基本上,问题归结为这些项目:
您可以通过阵列的单个循环完成所有操作。
答案 2 :(得分:0)
是否需要第二个for循环?为什么?我会这样做..
//Take in the number to test.
public void islarger(int num){
int counter = 0;
int numbers[] = new int[5];
//loop through array
for(int x=0; x < array.length; ++x){
if(array[x] > num){
//If it meets the condition add it to the new array
numbers[y] = array[x];
++y;
}
}
//print our results.
System.out.println("There are " + counter " numbers larger than " + num + \n "They are...");
Arrays.toString(numbers);
}
答案 3 :(得分:0)
为什么不是每次找到大于用户输入的值时都会增加一个整数?
int count=0;
for(int i=0; i<4; i++) {
if(myArrays[i] > numEntered) {
count++;
System.out.println(myArrays[i]);
}
}
System.out.println("found " + count + " values greater than " + numEntered);