下面的代码用于将一组单词存储在 a 中std::vector
,并通过将用户给出的特定单词与存储在向量中的所有单词进行比较来计算用户给出的特定单词在向量中出现的次数。
在下面的程序中,控制台不会提示我输入第二个std::cin >>
。
#include <iostream>
#include <ios>
#include <iomanip>
#include <vector>
#include <algorithm>
using namespace std;
int main(int argc, const char * argv[])
{
cout<<"enter your words followed ny EOF"<<endl;
vector<string> words;
string x;
typedef vector<string>::size_type vec_size;
vec_size size;
while (cin>>x)
{
words.push_back(x);
}
size=words.size();
cin.clear();
//now compare
cout<<"enter your word:"<<endl;
string my_word;
int count=0;
cin>>my_word; //didn't get any prompt in the console for this 'cin'
for (vec_size i=0; i<size; ++i)
{
my_word==words[i]?(++count):(count=count);
}
cout<<"Your word appeared "<<count<<" times"<<endl;
return 0;
}
我得到的最终输出是“你的词出现了 0 次”。代码有什么问题。任何帮助都会很棒。