用C++语言数组输入N个字符串,将他们按字母由大到小的顺序排列并输出。
时间: 2024-02-24 09:57:38 浏览: 79
将若干字符串按字母顺序由小到大输出。-C++教程(PPT)
可以使用C++的STL中的sort函数和vector容器来实现:
```c++
#include <iostream>
#include <string>
#include <algorithm>
#include <vector>
using namespace std;
bool cmp(string a, string b) {
return a > b;
}
int main() {
int n;
cin >> n;
vector<string> str;
for (int i = 0; i < n; i++) {
string s;
cin >> s;
str.push_back(s);
}
sort(str.begin(), str.end(), cmp);
for (int i = 0; i < n; i++) {
cout << str[i] << endl;
}
return 0;
}
```
该程序使用了vector容器来存储输入的字符串,vector容器可以自动扩展空间,因此不需要预先指定数组大小。使用for循环读入N个字符串,每次读入一个字符串后,使用push_back函数将其添加到vector中。然后使用sort函数对vector中的字符串进行排序,排序时使用了一个自定义的比较函数cmp,该函数返回a > b,表示按字母由大到小的顺序排列。最后将排好序的字符串依次输出即可。
需要注意的是,由于使用了vector容器来存储字符串,因此输出时需要使用vector的下标运算符[]来访问字符串。
阅读全文