用c语言统计一篇文章中某一个单词出现的次数
时间: 2023-09-10 12:15:08 浏览: 37
下面是一个简单的C语言实现示例:
```c
#include <stdio.h>
#include <string.h>
#define MAX_WORD_LEN 100
int main() {
char word[MAX_WORD_LEN]; // 存储要统计的单词
char article[10000]; // 存储文章内容
int count = 0; // 统计单词出现次数
char* token; // 指向文章中的单词
// 读取文章内容
printf("请输入文章内容:\n");
fgets(article, sizeof(article), stdin);
// 去除文章中的标点符号和换行符
for (int i = 0; article[i]; i++) {
if (article[i] == '.' || article[i] == ',' || article[i] == '?' || article[i] == '!' || article[i] == ';' || article[i] == ':' || article[i] == '(' || article[i] == ')' || article[i] == '[' || article[i] == ']' || article[i] == '{' || article[i] == '}' || article[i] == '\n') {
article[i] = ' ';
}
}
// 读取要统计的单词
printf("请输入要统计的单词:\n");
scanf("%s", word);
// 统计单词出现次数
token = strtok(article, " ");
while (token != NULL) {
if (strcmp(token, word) == 0) {
count++;
}
token = strtok(NULL, " ");
}
// 输出结果
printf("单词 %s 出现了 %d 次。\n", word, count);
return 0;
}
```
这段代码首先定义了一个`word`数组来存储要统计的单词,一个`article`数组来存储文章内容,以及一个`count`变量来统计单词出现次数。然后,代码使用`fgets()`函数读取文章内容,并使用一个循环去除文章中的标点符号和换行符。接下来,代码使用`scanf()`函数读取要统计的单词。最后,代码使用`strtok()`函数按空格分割文章内容,并统计指定单词出现的次数。最终,代码输出统计结果。