C++利用swap函数完成选择排序实现数字排序
以下是使用 C++ 实现利用 `swap` 函数完成选择排序并对输入数字进行排序的代码: ```cpp #include <iostream> using namespace std; // 选择排序函数 void selectionSort(int arr[], int n) { for (int i = 0; i < n - 1; i++) { // 找到最小元素的索引 int minIndex = i; for (int j = i + 1; j < n; j++) { if (arr[j] < arr[minIndex]) { minIndex = j; } } // 交换当前元素和最小元素 swap(arr[i], arr[minIndex]); } } int main() { int n; cin >> n; int arr[100]; // 读取输入的数字 for (int i = 0; i < n; i++) { cin >> arr[i]; } // 调用选择排序函数 selectionSort(arr, n); // 输出排序后的数字 for (int i = 0; i < n; i++) { if (i > 0) { cout << " "; } cout << arr[i]; } cout << endl; return 0; } ``` ### 代码解释: 1. **`selectionSort` 函数**:该函数实现了选择排序算法。它通过两轮循环,外层循环遍历数组,内层循环找到当前未排序部分的最小元素的索引,然后使用 `swap` 函数将当前元素和最小元素交换位置。 2. **`main` 函数**:首先读取输入的数字数量 `n`,然后读取 `n` 个整数存储在数组 `arr` 中。接着调用 `selectionSort` 函数对数组进行排序,最后输出排序后的数组。 ######[AI问答 | 449点数解答 | 2026-05-23 19:56:17]
- Python 实现球类:精准计算半径、表面积与体积,附输入验证与异常处理!(阿里通义 | 261点数解答 | 2024-11-28 21:19:39)395
- C 语言实现链表操作:创建、输出、删除及插入功能详解(字节豆包 | 534点数解答 | 2024-12-09 21:33:48)367
- C语言实现链表创建、输出、删除与插入操作的完整代码及注意要点(字节豆包 | 609点数解答 | 2024-12-18 12:18:21)385
- 小核桃破密码遇进度条:补全代码实现百分比加载及完成提示 (字节豆包 | 326点数解答 | 2025-12-13 20:06:10)64
- 小核桃补全代码:实现进度条加载信息输出(字节豆包 | 53点数解答 | 2026-01-10 19:26:25)56
- 小核桃解门密遇进度条,代码补全助其加载完成!(字节豆包 | 90点数解答 | 2026-01-10 19:26:42)54
- 小核桃破解密码遇进度条!C++代码补全助其完成加载(百度文心 | 231点数解答 | 2026-01-10 19:57:04)59
- C++ 实现:精准统计给定范围 [L, R] 内数字 2 出现的次数及代码详解(字节豆包 | 401点数解答 | 2026-02-05 21:17:05)77
- C++实现:统计[L, R]范围内数字2出现的次数及代码详解(字节豆包 | 489点数解答 | 2026-02-07 17:12:26)93
- 超详细:JDK安装及Windows系统环境变量设置全攻略 (阿里通义 | 376点数解答 | 2024-03-06 17:27:29)376
- C 语言代码:补充函数实现变量值交换及注意要点揭秘(字节豆包 | 174点数解答 | 2024-12-12 00:37:54)180
- C 语言:实现 swap 函数完成两变量交换的代码及逻辑要点(字节豆包 | 121点数解答 | 2024-12-15 19:32:57)222