**已关闭。**此问题为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;
}
1条答案
按热度按时间ogq8wdun1#
正如我所看到的,问题出在
for
循环中,而不是!=
运算符中。条件
i < N
不正确。您应该使用length()
或size()
方法,如i < N.length()
或i < N.size()
。也没有理由把
continue
放在else
块中,因为它在if
语句之后没有任何代码,它将自动进入循环的下一步。