C语言的冒泡排序封装
#include<stdio.h>
/*
int arr[] 要排序的数组
int len 数组的长度
int c 控制升序或降序排列 1为升序,0为降序
*/
int mySqrt(int arr[], int len, int c){
int i, j;
for(i = 0; i < len - 1; i++){
for(j = 0; j < len - i - 1; j++){
// 升序排列
if(c == 1){
if(arr[j] > arr[j+1]){
int t = arr[j];
arr[j] = arr[j+1];
arr[j+1] = t;
}
// 降序排列
}else if(c == 0){
if(arr[j] < arr[j+1]){
int t = arr[j];
arr[j] = arr[j+1];
arr[j+1] = t;
}
}
}
}
return 0;
}
main(){
int arr[] = {1,5,4,2,3};
int k, len;
len = sizeof(arr) / sizeof(arr[0]);
mySqrt(arr, len, 1);
for(k = 0; k < len; k++){
printf("%d\t",arr[k]);
}
}