用选择排序法对10个整数进行排序[1,12,4,99,10,22,-7,0,99,8]用C语言编程输出
时间: 2024-10-24 19:08:10 浏览: 18
选择法排序程序设计导学案文件.pdf
选择排序是一种简单直观的排序算法,它的工作原理是在未排序序列中找到最小(或最大)元素,然后存放在序列的起始位置,再从剩余未排序元素中继续寻找最小(大)元素,直到全部待排序的数据排完。以下是使用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, 99, 10, 22, -7, 0, 99, 8};
int n = sizeof(numbers) / sizeof(numbers[0]);
printf("原始数组:\n");
for (int i = 0; i < n; i++) {
printf("%d ", numbers[i]);
}
printf("\n");
selectionSort(numbers, n);
printf("排序后的数组:\n");
for (int i = 0; i < n; i++) {
printf("%d ", numbers[i]);
}
printf("\n");
return 0;
}
```
当你运行这个程序,它会输出原始数组及经过选择排序后的有序数组。
阅读全文