本题目要求编写c程序统计一行字符中单词的个数。所谓“单词”是指连续不含空格的字符串,各单词之间用空格分隔,空格数可以是多个。 输入格式: 输入给出一行字符。 输出格式: 在一行中输出单词个数。
时间: 2024-10-27 09:02:57 浏览: 37
用c语言实现 计算一个字符串中单词的个数
5星 · 资源好评率100%
这是一个简单的C语言编程任务,你可以通过遍历输入字符串并逐个检查字符是否为空格来实现单词计数。以下是解决这个问题的一种基本算法:
```c
#include <stdio.h>
#include <ctype.h> // 包含处理字符类型的功能
int main() {
char str[100]; // 假设输入行最多包含99个字符
fgets(str, sizeof(str), stdin); // 从标准输入读取一行字符
int word_count = 0; // 初始化单词计数器为0
int prev_char_was_space = 0; // 上一个字符是否为空格
for (int i = 0; str[i] != '\0'; i++) { // 遍历字符串
if (!isspace(str[i])) { // 如果当前字符不是空格
if (prev_char_was_space) { // 如果上一个字符是空格,那么开始一个新的单词
word_count++;
}
prev_char_was_space = 0; // 当前字符非空格,上一个字符不再是空格
} else { // 当前字符是空格
prev_char_was_space = 1; // 空格被视为分隔符,更新状态
}
}
// 结束后最后一个单词也需要计入
if (!prev_char_was_space) {
word_count++;
}
printf("单词个数: %d\n", word_count); // 打印结果
return 0;
}
```
阅读全文