- 相關推薦
C語言數組練習:冒泡排序
導語:將數組16 25 9 90 23 降序排序。冒泡排序的基本原理,遍歷和交換,第一輪循環;如果某個數字小于后面的數字,那么就交換。下面來看看C語言數組練習:冒泡排序
1 25 16 9 90 23
2 25 16 9 90 23
3 25 16 90 9 23
4 25 16 90 23 9
需要比較多輪,數組長度-1輪
每輪比較的次數(數組長度-1)-當前的輪數
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 | #include <stdio.h> #include <stdlib.h> #define N 5 int main() { int i,j; int temp; int nums[N] = { 16 , 25 , 9 , 90 , 23 }; //外層循環控制輪數 for (i = 0 ; i < N - 1 ; i++) { //內層循環控制每輪比較的次數 for (j = 0 ; j < N - i- 1 ; j++) //如果當前值小于后面一個數,則交換 { if (nums[j] < nums[j + 1 ]) { temp = nums[j]; nums[j] = nums[j + 1 ]; nums[j + 1 ] = temp; } } } printf( "排序后的結果是:
" ); for (i = 0 ; i < N; i++) { printf( "%d " , nums[i]); } for (i = 0 ; i < N - 1 ; i++) { //內層循環控制每輪比較的次數 for (j = 0 ; j < N - i - 1 ; j++) //如果當前值小于后面一個數,則交換 { if (nums[j] > nums[j + 1 ]) { temp = nums[j]; nums[j] = nums[j + 1 ]; nums[j + 1 ] = temp; } } } printf( "排序后的結果是:
" ); for (i = 0 ; i < N; i++) { printf( "%d " , nums[i]); } } </stdlib.h></stdio.h> |
【C語言數組練習:冒泡排序】相關文章:
C語言經典冒泡排序法09-24
經典c語言冒泡排序法08-08
C語言的冒泡排序方法08-22
C語言冒泡排序算法實例06-15
C語言經典冒泡排序法詳解08-03
什么是C語言數組10-03
C語言數組教程08-31
C語言數組方法08-06
C語言數組實例解析10-21
C語言數組的定義及引用08-05