如何将用户输入与数组进行比较,检查其输入是否少于最后输入

时间:2019-02-18 18:30:06

标签: c arrays input compare

我必须要求用户输入10个不同的数字。我必须查看用户输入是否少于输入的最后一个数字(该数字已添加到数组中)。我在比较它时遇到了麻烦,因为我的逻辑听起来不错,但是无论出于什么原因,它都不会在循环的早期保留较低的数字。也许你们可以看看我的if语句中的问题所在。 getNum()函数只是获取用户输入,如果您感到好奇,则将其返回。预先感谢!

private void editTree(ParseTree tree){

    for(int i = 0; i < tree.getChildCount();i++){

        ParseTree child = tree.getChild(i);
        if(child instanceof TerminalNode){

             //Edit child's text

        } else {

            editTree(child);
        }

    }
}

1 个答案:

答案 0 :(得分:2)

您始终为lowestNum分配一个新值

numInput = getNum();
myArray[indexTracker] = numInput;

if (numInput <= myArray[indexTracker])
{
    lowestNum = numInput;
    lowestNumPlace = indexTracker;
}

...因为执行A = B后,B <= A在逻辑上将始终为真。

尝试以下方法:

numInput = getNum();
myArray[indexTracker] = numInput;

if (numInput <= lowestNum)  // note, comparing to the lowest number, not the current one
{
    lowestNum = numInput;
    lowestNumPlace = indexTracker;
}