最近看《C++ primer》,有这样一个题目
从cin读入一组词并把它们存入一个vector 对象,然后设法把所有词都改写为大写形式。输出改变后的结果,每个词占一行。
考察
- 怎么输入字符串
- 怎么存入vector对象
- 怎么对字符串字符处理
代码
#include <iostream>
#include <vector>
#include <string>
#include <cctype>
using namespace std;
int main()
{
vector<string> word_vec;
string Inword;
while (cin >> Inword)
{
if (Inword == "q")
break;
word_vec.push_back(Inword);
}
cout << endl;
for (auto &word : word_vec)
{
for (auto &letter : word)
{
letter = toupper(letter);
cout << letter;
}
cout << endl;
}
return 0;
}
- 当输入的字符是q,停止输入,跳出while循环
- vector是一个序列,用for循环 auto取序列的每个元素
- string也是一个序列,用for循环 auto取序列的每个元素