C語言氣泡排序源程式

來源:酷知科普網 1.92W

C語言是一門計算機高階語言,被許多IT行業的工作者們熟練地運用著。在C語言中,排序的演算法有好幾種,下來我會舉一個例子:C語言的氣泡排序,以及氣泡排序的一些講解。

C語言氣泡排序源程式

操作方法

(01)程式碼源程式為:#include<stdio.h>#include<math.h>#define ok 1int main(){int sort(int azz[],int n );int arr[7];int i,j;printf("請輸入幾個整數:n");//七個以內的數for(j=0;j<;j++)scanf("%d",&arr[j]);sort(arr,7);printf("請輸出arr[]中的數:");for(i=0;i<7;i++)printf("%3d",arr[i]);printf("n");return 0;}int  sort(int  azz[],int n){int t,i,j;for(i=0;i<n;i++)for( j=0;j<n-1;j++){if(azz[j]>azz[j+1]){t=azz[j];azz[j]=azz[j+1];azz[j+1]=t;}}return ok;}

C語言氣泡排序源程式 第2張

(02)此程式含有一維陣列一般形式:型別符 陣列名[常量表達式];說明:陣列名是一個地址常量,不能對陣列進行賦值和運算;在定義陣列時,陣列的元素個數必須是常量。int n=3;     int a[n];  就是錯誤的形式;陣列元素的下標必須從0開始。

C語言氣泡排序源程式 第3張

(03)程式還運用到了“函式呼叫”一般形式:函式名(實參表列)注意:在主函式中對呼叫函式進行說明,則只能在主函式中呼叫;在主函式前對呼叫函式進行說明,則能在主函式和其後的其他函式中呼叫;

C語言氣泡排序源程式 第4張

(04)可以看到,執行了呼叫函式後,你所輸入的無序數字,在輸出後變成了有序的數字。這是由於形引數組azz已用氣泡排序對輸入的數字進行了排序,形引數組改變,使得實引數組也隨之改變了。

C語言氣泡排序源程式 第5張

(05)氣泡排序氣泡排序(Bubble Sort),是一種計算機科學領域的較簡單的排序演算法。氣泡排序演算法的運作如下:比較相鄰的元素。如果第一個比第二個大,就交換他們兩個。對每一對相鄰元素作同樣的工作,從開始第一對到結尾的最後一對。在這一點,最後的元素應該會是最大的數。針對所有的元素重複以上的步驟,除了最後一個。持續每次對越來越少的元素重複上面的步驟,直到沒有任何一對數字需要比較。

C語言氣泡排序源程式 第6張

(06)輸入數字時,一定要注意輸入時,應該輸入一個數字就要回車,才能保證輸入的數字個數不超過陣列所要求的長度。

C語言氣泡排序源程式 第7張
熱門標籤