117.info
人生若只如初见

c语言怎么查找字符串出现次数

在C语言中,可以使用循环和条件判断来查找字符串中某个子串的出现次数。以下是一个示例代码:

#include 
#include 

int countOccurrences(const char *str, const char *subStr) {
    int count = 0;
    int subStrLen = strlen(subStr);
    
    while (*str) {
        if (strncmp(str, subStr, subStrLen) == 0) {
            count++;
        }
        str++;
    }
    
    return count;
}

int main() {
    char str[100];
    char subStr[100];
    
    printf("请输入一个字符串:");
    fgets(str, sizeof(str), stdin);
    str[strcspn(str, "\n")] = '\0';  // 删除换行符
    
    printf("请输入要查找的子串:");
    fgets(subStr, sizeof(subStr), stdin);
    subStr[strcspn(subStr, "\n")] = '\0';  // 删除换行符
    
    int occurrences = countOccurrences(str, subStr);
    
    printf("子串 \"%s\" 在字符串 \"%s\" 中出现了 %d 次。\n", subStr, str, occurrences);
    
    return 0;
}

在上面的代码中,countOccurrences 函数用于计算子串在字符串中出现的次数。内部使用了 strncmp 函数来比较字符串,while 循环遍历整个字符串,每次比较字符串的一部分是否与子串相等,如果相等则计数器加1,然后继续循环。最后返回计数器的值。

main 函数中,首先接收用户输入的字符串和子串。然后调用 countOccurrences 函数来计算子串在字符串中出现的次数,并将结果打印出来。

注意:

  • 在程序中使用了 fgets 函数来读取用户输入的字符串和子串,使用 strcspn 函数删除输入字符串中的换行符。
  • 该代码只能计算子串在字符串中连续出现的次数,如果要计算非连续出现的次数,需要进行修改。

未经允许不得转载 » 本文链接:https://www.117.info/ask/fe859AzsLBQZXB1Q.html

推荐文章

  • c语言goto用法是什么

    在C语言中,goto语句用于从一个位置跳转到另一个位置。它可以用于跳出循环、条件语句或者函数。goto语句的语法如下:
    goto label;
    ...
    label: //...

  • goto在c语言中的运用方法是什么

    goto 语句在 C 语言中允许程序从一个位置跳转到另一个位置。然而,在实际编程中,过度使用 goto 语句通常被认为是一种不好的编程实践,因为它可能导致代码结构混...

  • c语言堆和栈的区别是什么

    C语言中的堆和栈是两种不同的内存分配方式。 栈(Stack):栈是由编译器自动分配和释放的内存区域,用于存储局部变量和函数调用的上下文信息。栈的特点是先进后出...

  • C语言结构体数组怎么定义和使用

    在C语言中,可以通过定义结构体数组来存储多个具有相同数据类型的结构体对象。下面是定义和使用结构体数组的示例代码:
    #include // 定义一个结构体类型

  • Java热更新失败怎么解决

    Java热更新失败可能是由于以下几个原因导致的: 类加载问题:热更新时,如果新的类文件无法正确加载,可能是因为类名、包名或类路径发生了变化。解决方法是确保新...

  • mongodb怎么配置与开启

    要配置和开启MongoDB,你需要按照以下步骤进行操作: 下载MongoDB:访问MongoDB官方网站(https://www.mongodb.com/)下载适合你操作系统的MongoDB版本。 安装Mo...

  • redis多集群配置的步骤是什么

    配置Redis多集群的步骤如下: 安装Redis:在每个集群节点上安装Redis。
    配置节点:为每个集群节点配置不同的端口号和数据目录。可以使用不同的配置文件或启...

  • mongodb服务名无效如何解决

    如果你遇到了"mongodb服务名无效"的问题,有以下几种可能的解决方法: 检查服务名是否正确:确保你输入的服务名是正确的,并与MongoDB实例中的服务名匹配。服务名...