如何使用标志变量为设计用于在数组中搜索通过用户输入提供的字符串的程序产生输出?

问题描述

我正在从事未分级的练习作业,并且在所需的C ++代码中苦苦挣扎。分配参数用于编写一个程序,该程序采用用户输入提供的字符串,搜索包含10个元素的数组,并根据用户输入是否匹配数组中包含的字符串来设置标志变量的值。如果未找到该字符串,程序将输出一个短语,这是通过参考flag变量的值确定的。

到目前为止,我有以下代码

intIdx = Arrays.stream(intIdx)
               .Boxed()
               .sorted(Comparator.comparingInt(a -> intervals[a][0]))
               .mapToInt(i -> i)
               .toArray();

我相当确定我在这里所做的事情应该做我想做的事情,但是我在语法请求中出现方括号[]时出现语法错误,而我在做错事情时迷失了。 / p>

在我要学习的过程中,我不是要找人提供正确的代码供我简单复制。我正在寻找可以解释我做错了什么,我正在违反的规则和/或可以采取哪些步骤使此代码正常工作的人。

解决方法

您的想法正确,但是有一些语法错误。

首先,在C ++(以及许多其他语言)中,块用花括号({})表示,而不是像您所处环境的方括号一样。
其次,由赋值运算符=(即somevariable = somevalue)为变量设置值。 C ++中没有“ set”关键字。

要将这两点放在一起,循环内的条件应如下所示:

if (citiesInMichigan[x] == inCity) {
    foundIt = true;
    break;
}