c++ 为什么"!=“运算符在此代码中不起作用?[closed]

enyaitl3  于 2022-12-01  发布在  其他
关注(0)|答案(1)|浏览(182)

**已关闭。**此问题为not reproducible or was caused by typos。目前不接受答案。

这个问题是由一个打字错误或一个无法再重现的问题引起的。虽然类似的问题在这里可能是on-topic,但这个问题的解决方式不太可能帮助未来的读者。
2天前关闭。
Improve this question
我是编程和C++的新手。我正在尝试取一个字符串并检查它有多少个辅音。但是,!=运算符不起作用。

#include <iostream>
#include <string>
using namespace std;

int main()
{
    int N, count;
    string name;

    cin >> N >> name;
    count = 0;
    for(int i = 0; i < N; i++)
    {
        if(name[i] != 'a' || name[i] != 'e' || name[i] != 'i' || name[i] != 'o' || name[i] != 'u')
        {
            count++;
        }
        else
        {
            continue;
        }
    }
    cout << count << endl;
    return 0;
}
ogq8wdun

ogq8wdun1#

正如我所看到的,问题出在for循环中,而不是!=运算符中。
条件i < N不正确。您应该使用length()size()方法,如i < N.length()i < N.size()
也没有理由把continue放在else块中,因为它在if语句之后没有任何代码,它将自动进入循环的下一步。

相关问题