38、<简单>编程输入10个正整数,然后自动按从大到小的顺序输出
法1:
#include <iostream> #include <algorithm> // 使用sort排序函数必须引入此头文件 using namespace std; int main() { cout << "【输入规则】一行输入10个正整数,数字空格分隔" << endl; cout << "【输出规则】将数字从大到小排序,一行输出" << endl; cout << "请输入10个整数:"; // 定义长度为10的数组,存放输入数字 int a[10]; // 循环读取10个数字存入数组 for (int i = 0; i < 10; i++) { cin >> a[i]; } // sort排序:从大到小 sort(a, a + 10, greater<int>()); // 输出排序结果 cout << "\n从大到小排序结果:"; for (int i = 0; i < 10; i++) { if (i) cout << " "; // 第一个数字前不打印空格,避免开头多余空格 cout << a[i]; } cout << endl; return 0; }法2:
#include <iostream> using namespace std; int main() { cout << "输入规则:一行输入10个正整数,空格分隔" << endl; cout << "输出规则:按从大到小一行输出10个数字" << endl; cout << "请输入10个整数:"; int arr[10]; // 读取10个数字 for (int i = 0; i < 10; i++) { cin >> arr[i]; } // 冒泡排序:从大到小 for (int i = 0; i < 9; i++) { for (int j = 0; j < 9 - i; j++) { if (arr[j] < arr[j + 1]) { // 交换两个数 int temp = arr[j]; arr[j] = arr[j + 1]; arr[j + 1] = temp; } } } // 输出排序结果 cout << "\n从大到小排序结果:"; for (int i = 0; i < 10; i++) { if (i > 0) cout << " "; cout << arr[i]; } cout << endl; return 0; }