输入一行字符,以空格为标志,统计单词个数,用c++写出
时间: 2024-10-12 14:15:59 浏览: 34
从键盘接收一行字符统计有多少个单词数?-C++程序设计(谭浩强完整版)
在C++中,你可以使用标准库中的`std::string`、`std::istringstream`以及`std::count`函数来统计字符串中单词的数量。这里是一个简单的示例程序:
```cpp
#include <iostream>
#include <sstream>
#include <string>
int countWords(const std::string& input) {
// 创建一个istringstream对象,用于分割输入的字符串
std::istringstream iss(input);
// 使用getline读取单词,直到遇到空行为止
std::string word;
int count = 0;
while (iss >> word) {
++count; // 每读取到一个非空词,计数加一
}
return count;
}
int main() {
std::string line;
std::cout << "请输入一行字符(以空格分隔单词):";
getline(std::cin, line);
int wordCount = countWords(line);
std::cout << "单词总数: " << wordCount << std::endl;
return 0;
}
```
这个程序首先从用户那里获取一行输入,然后通过`getline`逐行读取并使用`istringstream`分割,每次迭代都会检查是否还有更多的单词(非空)。最后返回总的单词数量。
阅读全文