从键盘读入一行字符串,以空格作为分隔符,将内容存入字符串数组中。 (
时间: 2024-05-02 07:22:21 浏览: 142
好的,我理解了。可以开始回答您的问题了。
请使用以下代码来实现您的要求:
```
#include <iostream>
#include <string>
#include <sstream>
using namespace std;
int main()
{
string input;
getline(cin, input); // 从键盘读入一行字符串
stringstream ss(input); // 将字符串转换为字符流
string word;
string words[100]; // 定义字符串数组
int count = 0;
while (ss >> word) // 以空格作为分隔符,将内容存入字符串数组中
{
words[count] = word;
count++;
}
cout << "您输入的字符串为:" << input << endl;
cout << "字符串数组的内容为:" << endl;
for (int i = 0; i < count; i++)
{
cout << words[i] << endl;
}
return 0;
}
```
这段代码中,我们首先创建一个字符串变量`input`来保存用户从键盘输入的一行字符串。然后使用`getline`函数将输入读入到`input`变量中。
接着,我们创建一个字符流`ss`,并使用`input`变量将其初始化。然后,我们定义一个字符串变量`word`,以及一个字符串数组`words`和一个计数器变量`count`。
在循环过程中,我们使用`ss >> word`这样的语法,将以空格为分隔符的每个单词读入`word`中。接着将单词存入字符串数组`words`中,并将计数器变量`count`加1。
最后,我们输出用户输入的原始字符串和存储在字符串数组`words`中的所有单词。
希望这段代码可以满足您的要求。
阅读全文