当前位置:首页 > 行业动态 > 正文

c语言怎么统计单词

在C语言中,可以使用以下步骤来统计单词:

1、读取输入文本:你需要从用户或其他来源获取要统计的文本,你可以使用文件读取函数或标准输入函数(如fgets)来逐行读取文本。

2、处理空白字符:在统计单词之前,需要先处理空白字符,可以使用循环和字符串操作函数(如isspace)来去除每行的开头和结尾的空白字符。

3、分割单词:将处理后的文本按空格分割成一个个单词,可以使用字符串分割函数(如strtok)来实现。

4、存储单词:将分割得到的每个单词存储到一个数据结构中,如数组或链表。

5、统计单词数量:遍历存储单词的数据结构,并使用计数器来统计单词的数量。

下面是一个示例代码,演示了如何在C语言中统计单词:

#include <stdio.h>
#include <string.h>
#include <ctype.h>
int main() {
    char text[100]; // 存储输入文本的数组
    char words[100][20]; // 存储单词的数组
    int wordCount = 0; // 单词数量计数器
    // 读取输入文本
    printf("请输入文本:
");
    fgets(text, sizeof(text), stdin);
    // 处理空白字符和分割单词
    char *token = strtok(text, " t
"); // 使用第一个空白字符分割文本
    while (token != NULL) {
        strcpy(words[wordCount], token); // 将单词复制到数组中
        wordCount++; // 增加单词计数器
        token = strtok(NULL, " t
"); // 继续分割下一个单词
    }
    // 统计单词数量并输出结果
    printf("单词数量为:%d
", wordCount);
    printf("单词列表为:
");
    for (int i = 0; i < wordCount; i++) {
        printf("%s
", words[i]);
    }
    return 0;
}

上述代码中,我们首先定义了一个用于存储输入文本的数组text和一个用于存储单词的二维数组words,通过fgets函数读取用户输入的文本,并使用strtok函数按空白字符分割文本得到单词,分割得到的每个单词被复制到words数组中,并使用计数器wordCount记录单词的数量,通过循环遍历words数组,输出单词的数量和列表。

0