/* 需求: 使用“冒泡”排序進行數字排序 從小到大進行排序 思路: 每一次循環找到最大的那個數,放在最後,循環的次數等於數字的個數減1 當前位於下一位進行比較,如果當前數比後一個數大,那麼就交換兩個數的位置 */ #include<stdio.h> #define LEN 10 //定義數組長度常量 int main() { int a[LEN]; int i, j, t; //用戶輸入數字 printf("Please enter the %d integer:\n", LEN); for(i = 0; i < LEN; i++) scanf("%d", &a[i]); //排序 for(i = 1; i < LEN; i++) //需要循環數字的個數-1 { for(j = 0; j < LEN-i; j++) //對每一個數字進行比較 if(a[j] > a[j+1]) //如果左邊的數字比右邊的數字大,兩個數字位置交換 { t = a[j]; a[j] = a[j+1]; a[j+1] = t; } } //輸出 for(i = 0; i < LEN; i++) printf("%d ", a[i]); return 0; }
冒泡排序
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.