#include<stdio.h> int compare(int a,int b) { return a - b; } void sort(int *a,int n,int(*p)(int,int)) { int i,j; /* for(i=0;i<n-1;i++) { for(j=0;j<n-i-1;j++) { if(p(a[j],a[j+1])>0) { int temp; temp = a[j+1]; a[j+1] = a[j]; a[j] = temp; } } } */ //冒泡排序的两种形式 for(i=0;i<n;i++) { for(j=i;j<n;j++) { if(p(a[i],a[j])>0) { int temp; temp = a[j]; a[j] = a[i]; a[i]=temp; } } } } void print(int *a,int n) { int i; for(i=0;i<n;i++) { printf("%d\t",*(a+i)); } printf("\n"); } int main() { int a[5]={5,4,3,2,1}; sort(a,5,compare); print(a,5); return 0; }
版权声明:本文为博主原创文章,未经博主允许不得转载。
时间: 2024-11-05 11:45:24