编写程序:统计一个字符串中的英文单词个数。 (1)输入一个字符串 (2)设word为新单词出现的标记 (3)统计单词数 用c语言解决
时间: 2024-12-17 13:56:11 浏览: 22
在C语言中,我们可以使用`strtok()`函数来实现这个功能。这是一个简单的步骤:
```c
#include <stdio.h>
#include <string.h>
int count_words(char *str) {
int word_count = 0;
char *token;
// Step 1: 输入一个字符串
printf("请输入一个字符串: ");
fgets(str, sizeof(str), stdin); // 使用fgets读取一行输入并去掉换行符
// Step 2: 设word为新单词出现的标记
token = strtok(str, " "); // 分割字符为空格,strtok返回第一个单词,后续会自动跳过空格
while (token != NULL) { // 当找到单词时进入循环
word_count++; // 记录单词计数
token = strtok(NULL, " "); // 使用strtok继续查找下一个单词,直到遍历完所有单词
}
return word_count;
}
int main() {
char input_str[100];
int word_count = count_words(input_str);
printf("字符串中的英文单词个数为: %d\n", word_count);
return 0;
}
```
在这个程序中,我们首先获取用户输入的字符串,然后使用`strtok()`函数将字符串分割成单词,每遇到一个空格就认为是一个新的单词。当`strtok()`返回`NULL`时,表示已经处理完了所有的单词。
阅读全文