C++ 如何计算某个字符/替换的字符 。。。 v、 推回; } 对于(int i=0;i
如果您需要它来输出替换计数,那么最直接的方法就是引入一个专用的C++ 如何计算某个字符/替换的字符 。。。 v、 推回; } 对于(int i=0;i,c++,C++,如果您需要它来输出替换计数,那么最直接的方法就是引入一个专用的计数器变量,并在每次替换时递增它: ... v.push_back(s); } for (int i =0; i < v.size(); ++i) { int a_pos = -1; a_pos = v[i].find('a'); if (a_pos != -1) v[i][a_pos] = '@'; } cout<< v.size() << " "; 欢迎我建议你们看一下标准
计数器
变量,并在每次替换时递增它:
...
v.push_back(s);
}
for (int i =0; i < v.size(); ++i)
{
int a_pos = -1;
a_pos = v[i].find('a');
if (a_pos != -1)
v[i][a_pos] = '@';
}
cout<< v.size() << " ";
欢迎我建议你们看一下标准的库算法。你们需要用替换的a来计算单词数吗?是的,我知道我的v.size需要替换,但我不知道用什么,我已经尝试了代码中的其他输入,甚至如果语句试图通过,但没有用,谢谢!我试图通过使用count++的这种方式来完成它,但无法让它实现work@user16101600然后,我希望您能从思考您的
计数器
版本与此版本之间的差异中获益。如果答案是你想要的,别忘了接受。
#include <iostream>
#include <vector>
#include <string>
using namespace std;
int main()
{
vector<string> v;
string s;
int numOfStrings;
cin>>numOfStrings;
unsigned counter = 0; // Our counter
for (int i =0; i < numOfStrings; ++i) {
cin>>s;
v.push_back(s);
}
for (int i =0; i < v.size(); ++i) {
int a_pos = -1;
a_pos = v[i].find('a');
if (a_pos != -1) {
v[i][a_pos] = '@';
++counter; // Done a replacement, increment the counter
}
}
cout << "Counter: " << counter << endl; // Print the count of replacements
for (auto elem : v) { // Print all the elements in our vector of strings
cout<< elem <<" ";}
Input:
2 bar foo
Output:
Counter: 1
b@r foo