c语言按选择法将数组num的元素值按从低到高的排序
时间: 2024-09-13 13:06:40 浏览: 42
选择排序是一种简单的排序算法。它的工作原理是每次从待排序的数据元素中选出最小(或最大)的一个元素,存放在序列的起始位置,直到全部待排序的数据元素排完。对于未排序的数据,在已排序序列中从后向前扫描,找到相应位置并交换。
以下是使用C语言实现选择排序算法的一个例子:
```c
#include <stdio.h>
// 选择排序函数
void selectionSort(int num[], int size) {
int i, j, min_idx;
for (i = 0; i < size - 1; i++) {
// 找到最小元素的索引
min_idx = i;
for (j = i + 1; j < size; j++) {
if (num[j] < num[min_idx]) {
min_idx = j;
}
}
// 将找到的最小值与第i位置上的值进行交换
if (min_idx != i) {
int temp = num[i];
num[i] = num[min_idx];
num[min_idx] = temp;
}
}
}
// 打印数组函数
void printArray(int arr[], int size) {
for (int i = 0; i < size; i++) {
printf("%d ", arr[i]);
}
printf("\n");
}
// 主函数
int main() {
int num[] = {64, 25, 12, 22, 11};
int size = sizeof(num) / sizeof(num[0]);
selectionSort(num, size);
printf("Sorted array in ascending order:\n");
printArray(num, size);
return 0;
}
```
在这个例子中,`selectionSort` 函数实现了选择排序算法。首先定义了一个数组 `num`,并指定了它的大小 `size`。然后调用 `selectionSort` 函数对数组进行排序,最后打印出排序后的数组。
阅读全文