选择排序
#include <stdio.h> void swap(int *a,int *b) { if((a == NULL) || (b == NULL)) return; int temp = *a; *a = *b; *b = temp; return; } void selection(int a[],int len) { int i,j=0; for(i=0;i<len-1;i++)//n个数,只需要n-1次排序就可以,剩下一个自动被归位。 { for(j=i+1;j<len;j++) { if(a[i] > a[j]) swap(&a[i],&a[j]); } } return; } void main() { int i=0; int a[10] = {5,3,44,4,12,123,7,99,6,1}; int len = sizeof(a)/sizeof(a[0]); selection(a,len); for(i=0;i<len;i++) printf("%d ",a[i]); printf("\n"); return; }