用选择排序法对10个整数进行排序[1,12,4,9,10,22,-7,0,99,8]用C语言
时间: 2024-11-04 22:10:52 浏览: 76
选择排序是一种简单直观的排序算法,它的工作原理是在未排序序列中找到最小(或最大)元素,存放在序列的起始位置,然后,再从剩余未排序元素中继续寻找最小(大)元素,放到已排序序列的末尾,以此类推。下面是使用C语言实现选择排序对给定数组进行升序排列的过程:
```c
#include <stdio.h>
// 定义选择排序函数
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;
}
}
// 将找到的最小值与当前未排序区的第一个元素交换
int temp = arr[i];
arr[i] = arr[minIndex];
arr[minIndex] = temp;
}
}
int main() {
int numbers[] = {1, 12, 4, 9, 10, 22, -7, 0, 99, 8};
int size = sizeof(numbers) / sizeof(numbers[0]);
printf("Original array:\n");
for (int i = 0; i < size; i++) {
printf("%d ", numbers[i]);
}
selectionSort(numbers, size);
printf("\nSorted array using selection sort:\n");
for (int i = 0; i < size; i++) {
printf("%d ", numbers[i]);
}
return 0;
}
```
当你运行这个程序时,会选择排序算法对给定数组进行排序,输出结果会显示排序后的数组。
阅读全文