冒泡排序之小数上浮法

 1 #include <stdio.h>
 2 #define N 10
 3 
 4 void initial(int *a)
 5 {
 6     int i;
 7     for (i = 0; i < N; i++)
 8     {
 9         scanf("%d", a + i);
10     }
11 }
12 
13 void print(int *a)
14 {
15     int i;
16     for (i = 0; i < N; i++)
17     {
18         printf("%d ", *a++);
19     }
20 }
21 
22 void selectSort(int *a)
23 {
24     int i, j, k;
25     for (i = 0; i < N - 1; i++)
26     {
27         for (j = N - 2; j >= i; j--)
28         {
29             if (a[j] > a[j + 1])
30             {
31                 a[j] = a[j] ^ a[j + 1], a[j + 1] = a[j] ^ a[j + 1], a[j] = a[j] ^ a[j + 1];
32                 print(a);
33                 printf("\n");
34             }
35         }
36     }
37 }
38 
39 int main(void)
40 {
41     int a[N];
42     initial(a);
43     selectSort(a);
44     print(a);
45 }

 

posted @ 2016-05-16 09:06  新生代黑马  阅读(792)  评论(0编辑  收藏  举报