原文: https://www.programiz.com/cpp-programming/examples/lexicographical-order

该程序按字典顺序对 10 个字符串(由用户输入)进行排序。

要理解此示例,您应该了解以下 C++ 编程主题:


该程序从用户那里提取 10 个单词,并按字典顺序对其进行排序。


示例:按字典顺序对单词排序

  1. #include <iostream>
  2. using namespace std;
  3. int main()
  4. {
  5. string str[10], temp;
  6. cout << "Enter 10 words: " << endl;
  7. for(int i = 0; i < 10; ++i)
  8. {
  9. getline(cin, str[i]);
  10. }
  11. for(int i = 0; i < 9; ++i)
  12. for( int j = i+1; j < 10; ++j)
  13. {
  14. if(str[i] > str[j])
  15. {
  16. temp = str[i];
  17. str[i] = str[j];
  18. str[j] = temp;
  19. }
  20. }
  21. cout << "In lexicographical order: " << endl;
  22. for(int i = 0; i < 10; ++i)
  23. {
  24. cout << str[i] << endl;
  25. }
  26. return 0;
  27. }

输出

  1. Enter 10 words:
  2. C
  3. C++
  4. Java
  5. Python
  6. Perl
  7. R
  8. Matlab
  9. Ruby
  10. JavaScript
  11. PHP
  12. In lexicographical order:
  13. C
  14. C++
  15. Java
  16. JavaScript
  17. Matlab
  18. PHP
  19. Perl
  20. Python
  21. R
  22. Ruby

为了解决该程序,创建了一个字符串对象str [10]的数组。

用户输入的 10 个单词存储在此数组中。

然后,使用嵌套的for循环按字典顺序对数组排序,并在屏幕上显示。