c語言氣泡排序
記錄一下:
題目:
氣泡排序演算法的運作如下:
(1)比較相鄰的元素。如果前乙個比後二個大,就交換它們兩個。
(2)對每一對相鄰元素作同樣的工作,從開始第一對到結尾的最後一對。在這一點,最後的元素應該會是最大的數。
(3)針對所有的元素重複以上的步驟,除了最後乙個。
void
bubble_sort
(void);
int num =0;
int i =0;
int j =0;
int temp =0;
int flag =0;
printf
("請輸入需要進行排序的元素個數:");
scanf
("%d"
,&num)
;// 輸入num個需要排序的數值
printf
("請輸入需要進行排序的%d個元素:"
, num)
;for
(i =
0; i < num; i++
)for
(i =
0; i < num -
1; i++
)//用首個元素與其他元素作比較,自身不需比較
}//排序優化,表明陣列已有序if(
0== flag)
}printf
("已排好序,共遍歷了 %d 遍\n"
, i)
;printf
("排序後:");
for(i =
0; i < num; i++
)}
int
main
(int argc,
char
*ar**)
//執行結果:
請輸入需要進行排序的元素個數:5
請輸入需要進行排序的5個元素:90
1050
2040
已排好序,共遍歷了 2 遍
排序後:10
2040
5090
C語言 氣泡排序
氣泡排序 兩兩比較相鄰記錄的關鍵碼,如果反序則交換,直到沒有反序記錄為止 將整個待排序的記錄序列分成有序區和無序區,初始時有序區為空,無序區包括所有待排序的記錄 對無序區從前向後依次將相鄰記錄的關鍵碼進行比較,若反序則交換,從而使得關鍵碼小的記錄向前移,關鍵碼大的向後移 像水中的氣泡,體積大的先浮起...
氣泡排序 C語言
c語言是比較簡單基礎的排序方式,排序效率並不高,但是很穩定。通過rand隨機生產10個小於20的數來測試排序。氣泡排序 include include include void bubblesortbetter int a,int n 改進 if flag 0 break void bubbleso...
C語言 氣泡排序
直接看 吧 include void bubblesort int r,int len if exchange 如果沒有發生交換,提前終止演算法 return int main bubblesort aa,10 for int i 0 i 10 i printf d aa i printf n re...