冒泡排序

 

 1 #include <stdio.h>
 2 #include <stdlib.h>
 3 #define N 5 /*宏定义*/
 4 int main()
 5      {
 6 
 7             int  i,     j,    t,    a[N];
 8 
 9             for ( i = 0;   i  <  N;   i ++ )                                                 /*循环N次输入这N个数字*/
10                  {
11                     printf  ("请输入第%d个数组元素a[%d]:" ,   i + 1  ,   i );
12                     scanf  ("%d",  &a[i]);
13                 }
14 
15  
16 
17 
18             printf   ("-------------------------------------\n") ;               /*分割线,下面做冒泡排序这N个数字*/
19 
20             for   ( i  =  0 ;  i  <  N  -  1 ;  i ++ )
21 
22                   {
23                         for ( j = 0 ;  j  <  N - 1 - i ;   j ++)                            /*这里我们以降序为例子,升序改变小于号做即可*/
24                               {
25                                    if  ( a [  j  ]  <  a [  j  +  1 ] )
26                                       { 
27                                           t  =  a [  j  ];
28                                           a [  j  ]  =  a[  j  +  1 ] ;
29                                           a[ j  + 1 ]  =  t;
30                                       }
31                                }
32 
33                      }
34 
35                    printf  ( "排序后的结果是:  \n" ) ;                                    /*再次循环输出拍好顺序的数组*/
36 
37                    for  ( i  =  0 ;  i  <  N ;  i  ++ )
38                    printf  (" %d\t ", a[i] ) ;
39            return 0;
40    }

 

 

 

posted on 2021-07-29 12:13  白珏神尊  阅读(48)  评论(0)    收藏  举报

导航