當前位置:首頁 » 編程語言 » 冒泡排序c語言輸入

冒泡排序c語言輸入

發布時間: 2023-06-04 14:21:17

c語言冒泡排序法

(1)基本思想:在要排序的一組數中,對當前還未排好序的范圍內的全部數,自上而下對相鄰的兩個數依次進行比較和調整,讓較大的數往下沉,較小的往上冒。即:每當兩相鄰的數比較後發現它們的排序與排序要求相反時,就將它們互換。

(2)實例:

(3)代碼解釋:

#include<stdio.h>
int main()
{
int a[10];
int i,j,t,temp;//temp記錄臨時中間值
printf("請輸入10個數:");
for (i=0;i<10;i++)
{
scanf("%d",&a[i]);//記錄輸入的十個數
}
for (j=1;j<=9;j++)
{
t=10-j;
for (i=0;i<t;i++)
{
if (a[i]>a[i+1]) {

//交換兩數的位置

temp=a[i];
a[i]=a[i+1];
a[i+1]=temp;
}
}

}
for (i=0;i<=9;i++)
{
printf("%d ",a[i]);
}
return 0;
}


望採納!

⑵ c語言怎麼做冒泡排序啊

使用冒泡排序法進行編程

解釋:

1.第一個for循環:利用數組循環輸入4個變數。

2.第二個for循環:該循環的意思是如果a[0]>a[1]的話,兩個變數的值交換,利用循環依次比較。要注意的是i<3,因為其中有i+1,i最大取到2,也就是i+1最大取到3才正確。

3.第三個for循環:利用循環依次輸出排序後的數組,每輸出一個加一個空格以便於區分。

(2)冒泡排序c語言輸入擴展閱讀:

冒泡排序法,從數組頭部開始,不斷比較相鄰的兩個元素的大小,通過交換兩個元素的值使較大的元素逐漸往後移動,直到數組的末尾。

經過第一輪的比較,就可以找到最大的元素,並將它移動到最後一個位置。第一輪結束後,繼續第二輪。仍然從數組頭部開始比較,讓較大的元素逐漸往後移動,直到數組的倒數第二個元素為止。

經過第二輪的比較,就可以找到次大的元素,並將它放到倒數第二個位置。

以此類推,進行 n-1(n 為數組長度)輪「冒泡」後,就可以將所有的元素都排列好。

⑶ C語言冒泡排序(數組)

按照你的要求編寫的C語言冒泡排序的程序如下

#include<stdio.h>

intmain(){

inti,j,k,T,n,tmp;

scanf("%d",&T);

for(i=0;i<T;i++){

scanf("%d",&n);

inta[n];

for(j=0;j<n;j++){

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

}

for(j=0;j<n-1;j++){

for(k=0;k<n-1-j;k++){

if(a[k]>a[k+1]){

tmp=a[k];

a[k]=a[k+1];

a[k+1]=tmp;

}

}

for(k=0;k<n;k++){

printf("%d",a[k]);

}

printf(" ");

}

}

return0;

}


運行結果
輸入2
輸入51044312
輸出
4101243
4121043
1241043
1241043
輸入10201231224345424523-10
輸出
201221235424523-10434
122205424523-10123434
2122024523-1054123434
21222023-104554123434
221220-10234554123434
2212-1020234554123434
22-101220234554123434
2-1021220234554123434
-10221220234554123434
熱點內容
爬蟲需要自己搭建伺服器嗎 發布:2025-05-09 15:28:48 瀏覽:108
sqldeclarevarchar 發布:2025-05-09 15:15:27 瀏覽:361
演算法是正交 發布:2025-05-09 15:13:06 瀏覽:851
php環境搭建wamp 發布:2025-05-09 15:08:43 瀏覽:910
手機存儲顯示不出來 發布:2025-05-09 15:05:21 瀏覽:924
java字元數組初始化 發布:2025-05-09 15:03:49 瀏覽:106
編譯csharp 發布:2025-05-09 15:03:44 瀏覽:604
CPA經濟資料庫 發布:2025-05-09 15:03:43 瀏覽:348
php加框 發布:2025-05-09 15:03:03 瀏覽:323
c語言獲取cpu 發布:2025-05-09 15:02:52 瀏覽:801