使用C编写一个函数,该函数可以统计一个长度为2的字符串在另一个字符串中出现的次数
时间: 2024-11-18 13:17:18 浏览: 8
可以使用C语言编写一个函数来统计一个长度为2的字符串在另一个字符串中出现的次数。下面是一个简单的实现:
```c
#include <stdio.h>
#include <string.h>
int countSubstring(char* str1, char* str2) {
int len1 = strlen(str1);
int len2 = strlen(str2);
int count = 0;
for (int i = 0; i <= len1 - len2; i++) {
if (strncmp(str1 + i, str2, len2) == 0) {
count++;
}
}
return count;
}
int main() {
char str1[] = "abcdef";
char str2[] = "b";
int result = countSubstring(str1, str2);
printf("'%s' appears %d times in '%s'", str2, result, str1);
return 0;
}
```
这个函数`countSubstring`接受两个字符串参数`str1`和`str2`,分别表示要搜索的字符串和要查找的子字符串。它使用`strlen`函数获取两个字符串的长度,并使用`strncmp`函数比较两个字符串的前n个字符是否相等。如果相等,则计数器加一。最后,函数返回计数器的值,即子字符串在主字符串中出现的次数。
在主函数中,我们定义了两个字符串`str1`和`str2`,并调用`countSubstring`函数来统计子字符串在主字符串中出现的次数。最后,我们使用`printf`函数输出结果。
注意:这个实现假设子字符串是按照字母顺序排列的,并且主字符串中的所有子字符串都只出现一次。如果这些假设不成立,那么实现可能会变得复杂。
阅读全文