//选择排序
void f1(int *a, int n){
int temp;
for (int i = 0; i < n - 1;i++)
for (int j = i + 1; j < n;j++)
if (a[i]>a[j]){
temp = a[i];
a[i] = a[j];
a[j] = temp;
}
printf("选择排序后\n");
for (int i = 0; i < n; i++)
printf("%d\t", a[i]);
}
//冒泡排序
void f2(int *a, int n){
int temp;
for (int i = 0; i < n;i++)
for (int j = 0; j < n - 1;j++)
if (a[j]<a[j+1]){
temp = a[j];
a[j] = a[j + 1];
a[j + 1] = temp;
}
printf("冒泡排序后\n");
for (int i = 0; i < n; i++)
printf("%d\t", a[i]);
}
int main(){
int a[10] = { 22, 11, 33, 55, 10, 9, 14, 23, 34, 54 };
printf("排序前\n");
for (int i = 0; i < 10; i++)
printf("%d\t", a[i]);
printf("\n");
f1(a, 10);
printf("\n");
f2(a, 10);
return 0;
}
运行效果如下: