排序总结

一.冒泡法(升序)

通过比较相邻两个元素的值,将最大的元素冒泡到最后的位置

 1 #include <stdio.h>
 2 #include <stdlib.h>
 3 #define SIZE 10
 4 
 5 int main()
 6 {
 7     //冒泡排序法
 8     int a[SIZE]={1,6,4,8,10,12,89,68,45,37};
 9     int i,pass,hold;
10     printf("Data items in oraginal order\n");
11     for(i=0;i<=SIZE-1;i++)
12         printf("%4d",a[i]);
13     for(pass=1;pass<=SIZE-1;pass++)
14     {
15         for(i=0;i<=SIZE-2;i++)
16             if(a[i]>a[i+1])
17             {
18             hold=a[i];
19             a[i]=a[i+1];
20             a[i+1]=hold;
21             }
22     }
23     printf("\nData items in ascending order\n");
24     for(i=0;i<=SIZE-1;i++)
25         printf("%4d",a[i]);
26 
27     return 0;
28 }

 

posted @ 2013-03-07 20:11  天晴会下雨  阅读(115)  评论(0编辑  收藏  举报