c++实现输入n,代表要输入名字的数量,然后依次输入n个名字,名字只含有大小写字母,不含空格,且长度不超过20
时间: 2024-10-21 16:08:58 浏览: 9
在C++中,你可以使用`cin`来获取用户输入,并结合循环结构实现这个需求。这里是一个简单的示例程序:
```cpp
#include <iostream>
#include <string>
int main() {
int n;
std::cout << "请输入你要输入的名字数量: ";
std::cin >> n;
std::vector<std::string> names; // 创建一个字符串向量来存储名字
for (int i = 0; i < n; ++i) {
std::string name;
std::cout << "请输入第" << (i+1) << "个名字: ";
std::getline(std::cin, name); // 使用getline防止因空格而错误读取
while (name.length() > 20 || !std::all_of(name.begin(), name.end(), ::isalpha)) { // 检查长度和字母字符
std::cout << "名字长度超过20或包含非字母字符,请重新输入: ";
std::getline(std::cin, name);
}
names.push_back(name); // 添加到名字列表中
}
// 现在names包含了满足条件的所有名字
for (const auto& name : names) {
std::cout << "名字: " << name << std::endl;
}
return 0;
}
```
在这个程序中,我们首先让用户输入名字的数量,然后使用一个for循环遍历每个名字的输入过程。通过`std::getline`获取用户的输入,同时检查输入是否仅包含字母且长度不超过20。如果不符合条件,会提示用户重新输入。
阅读全文