以下是一段C++代码,可以对用户输入的6个城市名拼音(全小写)进行排序,并直接输出。此代码简洁明了,适合直接复制使用。
#include <iostream>
#include <string>
#include <algorithm> // 引入算法库中的sort函数
#include <cctype> // 引入字符处理函数
// 转换字符串为小写
void toLowerCase(std::string &str) {
std::transform(str.begin(), str.end(), str.begin(),
[](unsigned char c){ return std::tolower(c); });
}
int main() {
const int num_cities = 6; // 城市数量
std::string cities[num_cities]; // 字符串数组存储城市拼音
std::cout << "Enter 6 city names in pinyin (all lowercase):\n";
for(int i = 0; i < num_cities; ++i) {
std::cin >> cities[i]; // 输入城市名拼音
toLowerCase(cities[i]); // 转换为小写
}
// 使用std::sort对城市名拼音数组进行排序
std::sort(cities, cities + num_cities);
// 输出排序后的城市名拼音
std::cout << "The sorted city names are:\n";
for(int i = 0; i < num_cities; ++i) {
std::cout << (i + 1) << ": " << cities[i] << std::endl;
}
return 0;
}
这段代码首先定义了一个toLowerCase
函数,用于将字符串中的所有字符转换为小写。然后在main
函数中,我们定义了一个字符串数组cities
来存储用户输入的城市名拼音。用户输入后,我们调用toLowerCase
函数确保所有城市名都是小写形式。之后,使用std::sort
对数组进行排序,并遍历数组输出排序后的城市名拼音。