趣味程式設計丨C語言氣泡排序之如何對10個數公升序?

2021-10-14 03:41:21 字數 1098 閱讀 8139

例題:c語言實現從小到大對10個數進行排序,要求使用氣泡排序實現。

解題思路:排序的規律有兩種:一種是「公升序」,從小到大;另一種是「降序」,從大到小。

源**演示:

#include//標頭檔案

int main()//主函式

int i,j,t;//定義整型變數

int array[10];//定義陣列大小

printf("請輸入十個數:");//提示語句

for(i=0;i<10;i++)//手動往陣列裡輸入10個數

scanf("%d,",&array[i]);//注意&符號

for(j=0;j<9;j++)//外層迴圈限制

for(i=0;i<9-j;i++)//記憶體迴圈

if(array[i]>array[i+1])//如果前乙個數比後乙個數大

t=array[i]; //把小的數賦值給前面,大的數賦值給後面

array[i]=array[i+1];

array[i+1]=t;

printf("按照從小到大的順序排序:");//提示語句

for(i=0;i<10;i++)//迴圈輸出10個數

printf("%d ",array[i]);

printf("\n");//換行

return 0;//函式返回值為0

編譯執行結果如下:

請輸入十個數:9 8 4 1 6 2 7 4 10 9

按照從小到大的順序排序:1 2 4 4 6 7 8 9 9 10

以上就是很著名的「氣泡排序」,也稱為「起泡排序」,希望大家通過此例對以後學習快速排序、堆排序等會有所啟示。

程式設計學習書籍:

趣味程式設計丨如何用C語言輸出楊輝三角?只需三步!

例題 c語言實現輸出楊輝三角。第一部分,對有特點的數 每行開頭和結束的數都是1 進行賦值 for i 0 i 10 i for迴圈 array i i 1 給二維陣列的每一行的最後乙個賦值為1 array i 0 1 第二維陣列的每一行的開頭賦值為1 第二部分,給中間的數進行賦值 for i 2 i...

趣味程式設計丨如何用C語言輸出楊輝三角?只需三步!

例題 c語言實現輸出楊輝三角。第一部分,對有特點的數 每行開頭和結束的數都是1 進行賦值 for i 0 i 10 i for迴圈 array i i 1 給二維陣列的每一行的最後乙個賦值為1 array i 0 1 第二維陣列的每一行的開頭賦值為1 第二部分,給中間的數進行賦值 for i 2 i...

C語言 排序演算法之氣泡排序

氣泡排序 bubble sort 是一種簡單的排序演算法。它重複地走訪過要排序的數列,一次比較兩個元素,如果他們的順序錯誤就把他們交換過來。走訪數列的工作是重複地進行直到沒有再需要交換,也就是說該數列已經排序完成。這個演算法的名字由來是因為越小的元素會經由交換慢慢 浮 到數列的頂端。維基百科 氣泡排...