以下的代码都是本人测试可以直接运行的。我写的这些code,都是用CFree运行的。CFree在网上很容易就能下到了。简单易用,这里我就不多说了!本文主要就是介绍一些算法。随着我的不断学习,算法会不断的丰富的。 选择排序 #include <stdio.h> #include <math.h> /** 选择排序法: 1、将第一个数与其它数比较。找到最小的与第一个数交换 2、将第二个数与后面的数比较,找到最小的,与第二个数交换 ... */ int main(int argc, char *argv[]) { int i, j=1, min, temp, isChange = 0, a[11]; //初始化 for(i = 10; i >= 1; i--,j++) a[i] = j; printf("Unsorted:/n"); for(i=1; i<=10; i++){ printf("%5d", a[i]); } //将a[i]中是2到100开平方的数的倍数位赋值为0。 for(i=1; i<=9; i++){ min = i; isChange = 0; for(j=i+1; j <= 10; j++){ if(a[min] > a[j]){ min = j; isChange = 1; } } if(isChange){ temp = a[i]; a[i] = a[min]; a[min] = temp; } } printf("/nThe sorted numbers:/n"); for(i=1; i<=10; i++){ printf("%5d", a[i]); } }