练习5:输入一行字符,统计其中单词的个数。这里连续的字母构成单词,单词与单词之间用空格间隔,遇到其他无效字符可视为无效输入。不要用函数用c语音
时间: 2024-10-15 12:07:35 浏览: 24
练习5的目标是编写一段代码,用于计算输入的一行字符中包含的有效单词数量。在这个任务中,你需要逐个字符地遍历字符串,识别出由连续字母组成的单词,并忽略非字母字符。当遇到空格或其他非字母字符时,认为当前单词结束,开始处理下一个单词。最后统计有效单词的数量。
下面是一个简单的C语言实现示例:
```c
#include <stdio.h>
#include <ctype.h> // 包含处理字符种类的库
int main() {
char input[100]; // 输入字符串数组
fgets(input, sizeof(input), stdin); // 从标准输入读取一行字符
int word_count = 0; // 初始化单词计数器
int i = 0;
while (input[i] != '\0') { // 遍历直到字符串结束
if (isalpha(input[i])) { // 如果字符是字母
while (i < strlen(input) && isalpha(input[i])) { // 连续查找字母
i++;
}
word_count++; // 当找到单词结束(空格或非字母),计数加一
} else if (input[i] == ' ') { // 或者遇到空格
i++; // 跳过空格
} else {
i++; // 非字母字符直接跳过
}
}
// 如果字符串结尾不是空格,则最后一个单词也要计入
if (input[strlen(input)-1] != ' ') {
word_count++;
}
printf("输入字符串中有 %d 个单词。\n", word_count);
return 0;
}
阅读全文