统计各个单词个数c语言
时间: 2024-10-10 07:03:27 浏览: 11
在C语言中,统计字符串中各个单词的个数,通常需要先将输入的字符串按照空格分割成单词数组,然后再遍历这个数组计算单词的数量。这里是一个简单的示例:
```c
#include <stdio.h>
#include <string.h>
#define MAX_WORDS 100 // 假设最多有100个单词
// 函数来统计单词个数
int count_words(char str[]) {
int word_count = 0;
char *token; // 分割后的单词指针
token = strtok(str, " "); // 使用空格作为分隔符
while (token != NULL) { // 只要还有单词
word_count++;
token = strtok(NULL, " "); // 进行下一次分割
}
return word_count;
}
int main() {
char sentence[] = "这是一个测试句子,用于演示如何统计单词个数";
int word_count = count_words(sentence);
printf("字符串中共有 %d 个单词。\n", word_count);
return 0;
}
```
在这个例子中,`strtok()`函数用于分割字符串,返回的是每次分割得到的新单词,直到遇到字符串结尾或连续两次遇到相同的分隔符(这里是空格)。注意,`strtok()`会修改原字符串,所以在下次调用时传入NULL,从上次结束的位置继续。