您的位置:首页 > 编程语言 > C语言/C++

C++实现统计字符串出现次数

2008-11-12 12:47 381 查看
问题:在一字符串中查找一子串串并统计其出现的次数。

分析:解决这个问题若用C语言实现的话需要用到strchr()和strncmp()函数来进行子串的查找,然后统计其出现次数。而这里我用到C++中string字符串的函数进行实现,算法的思路是当查找到一个子串之后,就把这个子串从原来的字符串中删去。代码如下:

#include <iostream>
#include <string>

using namespace std;

int main()
{
int n=0,sum=0;
string s1("qwertyqwertyqwerty");
string s2("ert");
string temp=s1;
while (1){ //循环:查找到子串就把子串删去
n=temp.find(s2); //返回子串的位置
if (n!=-1){ //n=-1表示未找到子串
temp=temp.substr(n+s2.length(),temp.length()-s2.length()); //开一个新的字符串变量temp存储删去子串后的字符串
sum++; //出现次数
}
else break;
}
cout<<sum;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐