C++代码:计算字符串中子串出现的次数。要求:用一个子函数subString()实现,参数为指向字符串和要查找的子串的指针,返回次数。
时间: 2023-11-20 16:07:27 浏览: 67
Java统计一个字符串在另外一个字符串出现次数的方法
以下是实现该功能的C++代码:
```c++
#include <iostream>
#include <cstring>
using namespace std;
int subString(char* str, char* subStr) {
int count = 0;
int len1 = strlen(str);
int len2 = strlen(subStr);
for (int i = 0; i <= len1 - len2; i++) {
if (strncmp(str + i, subStr, len2) == 0) {
count++;
}
}
return count;
}
int main() {
char str[100], subStr[100];
cout << "请输入字符串:";
cin.getline(str, 100);
cout << "请输入要查找的子串:";
cin.getline(subStr, 100);
int count = subString(str, subStr);
cout << "子串出现的次数为:" << count << endl;
return 0;
}
```
首先定义了一个名为`subString`的子函数,该函数接受两个参数:指向字符串和要查找的子串的指针。函数内部使用`strncmp`函数来比较字符串的子串是否与要查找的子串相等,如果相等,就将计数器加1。最后返回计数器的值。
在主函数中,输入字符串和要查找的子串,调用`subString`函数来计算子串出现的次数,并输出结果。
阅读全文