用冒泡法對整數排序。整數用scanf函式輸入

2021-03-06 23:57:15 字數 3778 閱讀 6830

1樓:夢水紫靈

舉了例子:

乙個陣列:3,2,5,1,4從小到大排序

從左側開始,逐對比較

3>2,交換3,2的位置,陣列變為2,3,5,1,43<5,順序不變

5>1,交換5,1的位置,陣列變為2,3,1,5,45>4,交換5,4的位置,陣列變為2,3,1,4,5至此,陣列中最大的數被放在最右側了,接下來只要在前四個數中重複上述過程,就能把其中最大的數放在右側第二位。

這個過程就像冒泡泡,最大的氣泡冒上來,然後第二大的冒上來……。因此稱為氣泡排序法。

當然,排序順序、開始方向等都可以根據需要選擇,原理相同。

2樓:匿名使用者

冒泡法顧名思義就是將乙個數從下面浮上來,假設有5個數,21 56 87 6 9,

將第五個元素的值與第四個元素的值相比,如果第五個元素的值小於第四個元素的值,則交換著兩個元素的值。

接下來,將第四個元素的值與第三個元素的值進行比較,按照類似的方式,如果發現下面元素的值小於上面元素的值,則交換著兩個值。

將第三個元素的值與第二個元素的值比較,做同樣的工作。

在這一輪比較結束時,最小值將到達最上面,可以說最小值已經浮到最上面

第二輪,從最底部的元素開始比較,直到第二個元素,因為第乙個已經是最小,不需要再進行比較。

其實,就是乙個for迴圈,最外面的迴圈控制迴圈的次數,需要有n-1次迴圈

具體的code在這裡就不寫了

用冒泡法對10個整數排序,10個數用scanf函式輸入

3樓:匿名使用者

#include

#define n 10

int main()}}

for(i = 0;i < n;i ++)printf("%d ",num[i]);

printf("\n");

return 0;}

4樓:求小宸舒誠

冒泡法顧名思義

bai就是du將乙個數從下面zhi浮上來,假設有5個數,21568769,

將第dao五個版元素權的值與第四個元素的

值相比,如果第五個元素的值小於第四個元素的值,則交換著兩個元素的值。

接下來,將第四個元素的值與第三個元素的值進行比較,按照類似的方式,如果發現下面元素的值小於上面元素的值,則交換著兩個值。

將第三個元素的值與第二個元素的值比較,做同樣的工作。

在這一輪比較結束時,最小值將到達最上面,可以說最小值已經浮到最上面第二輪,從最底部的元素開始比較,直到第二個元素,因為第乙個已經是最小,不需要再進行比較。

其實,就是乙個for迴圈,最外面的迴圈控制迴圈的次數,需要有n-1次迴圈

具體的code在這裡就不寫了

c語言題目: 用冒泡法對任意輸入的10個整數由小到大的順序排序

5樓:智慧型小白菜

1、新建乙個工程和.c檔案。

2、定義變數型別。

3、用乙個for語句遍歷整個陣列。

4、引入乙個子函式,該子函式的作用是調整陣列元素的順序,使之由小到大排列。

5、最後通過for函式一次輸出調整後的陣列元素。

6、介紹一下子函式的實現語句,首先定義子函式。

7、定義變數型別。

8、該子函式實現順序的調整。

9、編譯,執行即可。

6樓:會飛的小兔子

#include

voidmain()

if(num==0)

printf("theintegersyouinput:\n");

for(i=0;i<=num;i++)

printf("\nmaopaopaixu\n");

for(i=0;i<=num;i++)

for(j=0;j<=num-1;j++)if(a[j]>a[j+1])

for(i=0;i<=num;i++)

printf("\nxuanzepaixu\n");

for(i=0;i<=num;i++)

for(j=i+1;j<=num;j++)if(a[i]>a[j])

for(i=0;i<=num;i++)

getch();

}擴充套件資料用「起泡法」,對輸入的10個字元由小到大排序。

#include

#include

intmain(void)

sort(a);//呼叫函式

return0;

}voidsort(chara[10])}}for(i=0;i<10;i++)}

7樓:

c語言程式:

#include

/* 氣泡排序,非遞減有序 */

void sort(int arr, int n)}}void main()

{int arr[10];

int i, n = 10;

printf("請輸入10個整數:");

for(i=0; i

執行測試:

請輸入10個整數:4 5 6 7 1 2 3 0 9 8排序後:

0 1 2 3 4 5 6 7 8 9

編寫乙個程式,要求從鍵盤輸入10個整數,然後採用氣泡排序法,按降序排序。 (用氣泡排序法啊)

8樓:

對不起啊!剛下線了~~

#include

main()

for(i=0;i<10;i++)

printf("%-3d",a[i]);}

9樓:草原上之狼

#include

main()

for(i=0;i<10;i++)

printf("%-3d",a[i]);}

10樓:匿名使用者

int main()

{int i,j,t,a[10];

printf("please input 10 integers:\n");

for(i=0;i<10;i++)

scanf("%d",&a[i]);

for(i=0;i<9;i++) /* 冒泡法排序 */

for(j=0;j<10-i-1;j++)if(a[j]>a[j+1])

{t=a[j];/* 交換a[i]和a[j] */a[j]=a[j+1];

a[j+1]=t;

11樓:匿名使用者

#include

#include

intmain()

}arr[j] = '\0';

printf("%s\n", arr);

return 0;}

12樓:匿名使用者

#include

void main()

for(i=0;i<10;i++)

printf("%d\n",a[i]);}

13樓:芬fen呀

/* 用氣泡排序法對一維整型陣列中的十個數公升序排序 */#include

#include

int main()

printf("the sequence after sort is:\n");

for(i=0;i<10;i++)

printf("%-5d",a[i]);

printf("\n");

system("pause");

return 0;

} 第一題的 在氣泡排序搜的

C語言程式設計用冒泡法對10和整數排序從大到小

根據你的來要求,想程式設計如下 include define n 10 main int i,j,k int a n printf nplease input d datas n n n for i 0 i源序用冒泡bai 法對十個數從大du到小排列,這裡zhi你還可以根據自dao己的需要,隨時通過...

C語言題目 用冒泡法對任意輸入的整數由小到大的順序排

1 新建乙個工程和.c檔案。2 定義變數型別。3 用乙個for語句遍歷整個陣列。4 引入乙個子函式,該子函式的作用是調整陣列元素的順序,使之由小到大排列。5 最後通過for函式一次輸出調整後的陣列元素。6 介紹一下子函式的實現語句,首先定義子函式。7 定義變數型別。8 該子函式實現順序的調整。9 編...

c語言指標用選擇法對整數由大到小順序排序

k j沒問題,問題在別的地方 void inv int x,int n 這裡交換k,i指向版的值,不權是j指向的值 用選擇法對10 個整數按從小到大順序排序。c語言 include include void swap int a,int b void select sort int a,int n ...