请写出用选择法对10整数排序的c语言程序,所有代码均写在main里!
时间: 2024-11-27 10:22:45 浏览: 5
冒泡法排序c语言程序.pdf
在C语言中,选择排序是一种简单直观的排序算法,它的工作原理每次从未排序的数据中选出最小(或最大)的一个元素,存放在已排序序列的起始位置,直到全部待排序的数据排完。以下是使用选择法对10个整数进行排序的C语言代码示例:
```c
#include <stdio.h>
// 选择排序函数
void selection_sort(int arr[], int n) {
for (int i = 0; i < n - 1; i++) {
// 找到未排序部分中的最小值索引
int min_index = i;
for (int j = i + 1; j < n; j++) {
if (arr[j] < arr[min_index]) {
min_index = j;
}
}
// 将找到的最小值放到已排序部分的开始
int temp = arr[i];
arr[i] = arr[min_index];
arr[min_index] = temp;
}
}
int main() {
int numbers[10] = {54, 26, 93, 17, 77, 31, 44, 55, 20, 80};
int array_size = sizeof(numbers) / sizeof(numbers[0]);
printf("Before sorting:\n");
for (int i = 0; i < array_size; i++) {
printf("%d ", numbers[i]);
}
printf("\n");
selection_sort(numbers, array_size);
printf("After sorting:\n");
for (int i = 0; i < array_size; i++) {
printf("%d ", numbers[i]);
}
printf("\n");
return 0;
}
```
这个程序首先定义了一个包含10个整数的数组,然后调用`selection_sort`函数对其进行排序,并在排序前和排序后分别打印数组内容。注意,由于选择排序的时间复杂度较高,对于大规模数据并不推荐使用。
阅读全文