当前位置:首页C语言 > 正文

c语言统计一个字符串在另一个字符串中出现的次数

作者:野牛程序员:2023-07-06 10:32:20C语言阅读 3375

要在C语言中统计一个字符串在另一个字符串中出现的次数,你可以使用以下代码示例:

#include <stdio.h>
#include <string.h>

int countOccurrences(const char *str, const char *subStr) {
    int count = 0;
    int subLen = strlen(subStr);
    
    while (*str) {
        if (strncmp(str, subStr, subLen) == 0) {
            count++;
            str += subLen;  // 跳过已匹配的子字符串长度
        } else {
            str++;
        }
    }
    
    return count;
}

int main() {
    const char *str = "Hello, Hello World! Hello";
    const char *subStr = "Hello";
    
    int occurrences = countOccurrences(str, subStr);
    printf("The substring '%s' appears %d times in '%s'\\n", subStr, occurrences, str);
    
    return 0;
}

在上面的代码中,countOccurrences 函数接受两个字符串参数:strsubStr。它使用 strncmp 函数来比较 str 中的每个子字符串是否与 subStr 相等。如果相等,就将出现次数计数器增加,并将 str 的指针向后移动到未匹配的部分。否则,只将 str 的指针向后移动一位。最终,函数返回子字符串在目标字符串中出现的总次数。

main 函数中,我们定义了一个示例字符串 str 和要查找的子字符串 subStr。然后,我们调用 countOccurrences 函数来获取子字符串在目标字符串中的出现次数,并打印结果。

当你运行以上代码时,输出应为:

The substring 'Hello' appears 3 times in 'Hello, Hello World! Hello'

这表明子字符串 "Hello" 在目标字符串 "Hello, Hello World! Hello" 中出现了 3 次。

野牛程序员教少儿编程与信息学奥赛-微信|电话:15892516892
野牛程序员教少儿编程与信息学竞赛-微信|电话:15892516892
相关推荐

最新推荐

热门点击