读入5个非空字符串(长度小于80),按从小到大的顺序输出
时间: 2024-12-23 13:16:05 浏览: 3
有七个字符串,要求对它们按由小到大的顺序排列
要读取5个非空字符串并按照字典序从小到大排序后输出,你可以使用C++标准库中的`std::cin`来获取用户的输入,`sort`函数来排序这些字符串,然后逐一输出。这里是一个简单的示例:
```cpp
#include <iostream>
#include <string>
#include <algorithm> // 使用sort函数
using namespace std;
int main() {
string str[5]; // 创建一个包含5个元素的字符串数组
for (int i = 0; i < 5; ++i) { // 循环读取5个字符串
cout << "请输入第" << (i + 1) << "个字符串: ";
getline(cin, str[i]); // getline用于读取直到换行符的整个行
while (str[i].empty()) { // 如果输入为空,提示重新输入
cout << "字符串不能为空,请重新输入: ";
getline(cin, str[i]);
}
}
sort(str, str + 5); // 对字符串数组进行排序
cout << "按字母顺序排列后的字符串为:\n";
for (const auto& s : str) { // 遍历排序后的数组
cout << s << " ";
}
cout << endl;
return 0;
}
```
在这个程序中,我们首先定义了一个字符串数组`str`,然后循环读取用户输入的五个字符串。如果输入的是空字符串,我们会要求用户重新输入。接着使用`sort`函数对字符串数组进行排序,最后遍历排序后的数组并输出。
阅读全文