Онлайн компилятор C

#include <stdio.h> void sort_array(int size, int a[]) { int i, j, nmin, c; for (i = 0; i < size - 1; i++) { nmin = i; for (j = i + 1; j < size; j++) { if (a[j] < a[nmin]) { nmin = j; } } if (nmin != i) { c = a[i]; a[i] = a[nmin]; a[nmin] = c; } } }
这段代码实现了一个选择排序算法,对整数数组进行升序排序。它通过每次从未排序部分找到最小元素,然后与当前位置交换,逐步将数组排好序。

- 你的代码逻辑是正确的,但函数没有返回值,也没有打印结果。如果你希望看到排序后的数组,需要在调用函数后自行输出数组内容。
- 注意变量命名:`nmin` 表示最小元素的下标,但名字不够直观,可以考虑用 `min_idx` 或 `min_index` 提高可读性。