酷代码 AI
菜单

函数接口定义如下: /* 对长度为n的数组arr执行选择排序 */ void selectionSort(int arr[], int n); 请实现selectionSort函数,使排序后的数据从小到大排列。 裁判测试程序样例: #include <stdio.h> #define N 1000 int arr[N]; /* 对长度为n的数组arr执行选择排序 */ void selectionSort(int arr[], int n); /* 打印长度为n的数组arr */ void printArray(int arr[], int n); void swap(int *xp, int *yp) { int temp = *xp; *xp = *yp; *yp = temp; } int main() { int n, i; scanf("%d", &n); for (i = 0; i < n; ++i) { scanf("%d", &arr[i]); } selectionSort(a

```c /* 对长度为n的数组arr执行选择排序 */ void selectionSort(int arr[], int n) { int i, j, min_idx; // 遍历数组 for (i = 0; i < n - 1; i++) { // 找到剩余未排序部分的最小元素的索引 min_idx = i; for (j = i + 1; j < n; j++) { if (arr[j] < arr[min_idx]) { min_idx = j; } } // 将找到的最小元素与未排序部分的第一个元素交换 if (min_idx != i) { int temp = arr[i]; arr[i] = arr[min_idx]; arr[min_idx] = temp; } } } ``` [2025-12-10 23:10:05 | AI问答 | 193点数解答]

服务商
相关提问
发财导航,免费问AI
实用工具查看更多