c语言中数组排序的用法
时间: 2023-11-24 08:07:56 浏览: 104
C语言中数组排序有多种方法,其中比较常用的是选择排序和冒泡排序。选择排序的基本思想是每次从待排序的元素中选出最小(或最大)的一个元素,存放在序列的起始位置,直到全部待排序的元素排完。而冒泡排序的基本思想是从头到尾比较相邻的两个元素,如果前一个元素大于后一个元素,则交换这两个元素的位置,一轮比较下来,最大的元素就被交换到了序列的最后面。下面是两种排序方法的代码实现:
选择排序:
#include <stdio.h>
int main(void){
int arr[10] = {5, 7, 1, 4, 9, 2, 10, 3, 8, 6};
int i, j, min, temp;
//选择排序
for(i=0; i<10-1; i++){
min = i;
for(j=i+1; j<10;j++){
if(arr[min]>arr[j]){
min = j;
}
}
if(min != j){
temp = arr[i];
arr[i] = arr[min];
arr[min] = temp;
}
}
//输出
for(i=0; i<10; i++){
printf("%d\n", arr[i]);
}
}
冒泡排序:
#include <stdio.h>
int main(void){
int arr[10] = {5, 7, 1, 4, 9, 2, 10, 3, 8, 6};
int i, j, temp;
//冒泡排序
for(i=0; i<10-1; i++){
for(j=0; j<10-i-1; j++){
if(arr[j]>arr[j+1]){
temp = arr[j];
arr[j] = arr[j+1];
arr[j+1] = temp;
}
}
}
//输出
for(i=0; i<10; i++){
printf("%d\n", arr[i]);
}
}
--相关问题--:
1. C语言中还有哪些常用的排序方法?
2. 如何对二维数组进行排序?
3. 如何对字符串数组进行排序?
阅读全文