首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何找出一个单词在一个句子中出现的次数[C代码]?

在C语言中,可以使用字符串处理函数和循环来找出一个单词在一个句子中出现的次数。以下是一个示例代码:

代码语言:c
复制
#include <stdio.h>
#include <string.h>

int countWordOccurrences(char sentence[], char word[]) {
    int count = 0;
    char *token;

    // 使用strtok函数将句子分割成单词
    token = strtok(sentence, " ");

    // 遍历每个单词并比较是否与目标单词相同
    while (token != NULL) {
        if (strcmp(token, word) == 0) {
            count++;
        }
        token = strtok(NULL, " ");
    }

    return count;
}

int main() {
    char sentence[100];
    char word[20];

    printf("请输入一个句子:");
    fgets(sentence, sizeof(sentence), stdin);

    printf("请输入要查找的单词:");
    fgets(word, sizeof(word), stdin);

    // 去除输入字符串中的换行符
    sentence[strcspn(sentence, "\n")] = '\0';
    word[strcspn(word, "\n")] = '\0';

    int occurrences = countWordOccurrences(sentence, word);
    printf("单词 \"%s\" 在句子中出现的次数为:%d\n", word, occurrences);

    return 0;
}

这段代码首先定义了一个countWordOccurrences函数,该函数接受一个句子和一个目标单词作为参数,并返回目标单词在句子中出现的次数。函数内部使用strtok函数将句子分割成单词,并通过循环遍历每个单词,使用strcmp函数比较是否与目标单词相同,如果相同则计数器加一。

main函数中,首先通过fgets函数获取用户输入的句子和目标单词。然后使用strcspn函数去除输入字符串中的换行符。接下来调用countWordOccurrences函数计算目标单词在句子中出现的次数,并将结果打印输出。

请注意,这只是一个简单的示例代码,可能无法处理一些特殊情况,例如标点符号、大小写敏感等。在实际应用中,可能需要根据具体需求进行适当的修改和扩展。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

领券