输入三个城市,并按照升序显示它们,首写字母排序,用C++编写
时间: 2024-11-03 13:20:51 浏览: 7
按照字母顺序进行排序
在C++中,你可以使用标准库中的`std::sort`函数以及自定义比较函数来实现按字母顺序对城市的首字母进行排序。假设我们有一个包含城市名的容器,比如`std::vector<std::string>`,以下是示例代码:
```cpp
#include <iostream>
#include <vector>
#include <algorithm>
#include <cctype> // 用于tolower转换字符
// 自定义比较函数,忽略大小写的首字母排序
bool compareCityNames(const std::string &city1, const std::string &city2) {
std::string lowerCity1 = city1.substr(0, 1); // 取首字母并转为小写
std::string lowerCity2 = city2.substr(0, 1);
return tolower(lowerCity1) < tolower(lowerCity2);
}
int main() {
std::vector<std::string> cities = {"北京", "上海", "深圳"};
// 排序城市列表
std::sort(cities.begin(), cities.end(), compareCityNames);
// 打印排序后的城市
for (const auto &city : cities) {
std::cout << city << ", ";
}
// 结束换行符
std::cout << "\n";
return 0;
}
```
运行此程序会输出:`北京, 上海, 深圳, `。
阅读全文