當前位置:首頁 » 編程語言 » 冒泡排序法的代碼c語言

冒泡排序法的代碼c語言

發布時間: 2022-08-27 04:18:16

1. c語言簡單冒泡法程序

#include<stdio.h>

voidsort(int*a,intlen)

{inti=0;

intj;

intt;

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

{

for(j=0;j<len-i-1;j++)

{

if(a[j]>a[j+1])

{

t=a[j];

a[j]=a[j+1];

a[j+1]=t;

}

}

}

}

intmain(intargc,char*argv[])

{

inta[10]={

-999,2,3,77,12,88,0,-8,99,100

};

inti=0;

sort(a,10);

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

{

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

}

return0;

}

(1)冒泡排序法的代碼c語言擴展閱讀

冒泡排序法

#include"stdio.h"

voidmain()

{

inta[10];

inti,j,temp;

//輸入10個整型數據

printf("Pleaseinputtennumbers: ");

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

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

//排序

for(i=0;i<9;i++)//10個數,10-1輪冒泡,每一輪都將當前最大的數推到最後

{

for(j=0;j<9-i;j++)//9-i,意思是每當經過一輪冒泡後,就減少一次比較

if(a[j]>a[j+1])

{

temp=a[j];

a[j]=a[j+1];

a[j+1]=temp;

}

}

//列印排序結果

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

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

return0;

}

2. C語言冒泡排序。

#include<stdio.h>

void main()

{

int a[10];

int i,j,t;

printf("input 10 numbers: ");

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

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

for(j=0;j<9;j++) /*進行9次循環 實現9趟比較*/

for(i=0;i<9-j;i++) /*在每一趟中進行9-j次比較*/

if(a[i]>a[i+1]) /*相鄰兩個數比較,想降序只要改成a[i]<a[i+1]*/

{

t=a[i];

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

a[i+1]=t;

}

printf("the sorted numbers: ");

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

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


}

(2)冒泡排序法的代碼c語言擴展閱讀:

冒泡排序演算法的運作

1、比較相鄰的元素。如果第一個比第二個大(小),就交換他們兩個。

2、對每一對相鄰元素作同樣的工作,從開始第一對到結尾的最後一對。這步做完後,最後的元素會是最大(小)的數。

3、針對所有的元素重復以上的步驟,除了最後已經選出的元素(有序)。

4、持續每次對越來越少的元素(無序元素)重復上面的步驟,直到沒有任何一對數字需要比較,則序列最終有序。

簡單的表示

#include <stdio.h>

void swap(int *i, int *j)

{

int temp = *i;

*i = *j;

*j = temp;

}

int main()

{

int a[10] = {2,1,4,5,6,9,7,8,7,7};

int i,j;

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

{

for (j = 9; j > i; j--)//從後往前冒泡

{

if (a[j] < a[j-1])

{

swap(&a[j], &a[j-1]);

}

}

}

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

{

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

}

return 0;

}

參考資料來源:冒泡排序-網路

3. C語言冒泡排序法代碼是什麼

所謂冒泡排序法,就是對一組數字進行從大到小或者從小到大排序的一種演算法。

1、具體方法是,相鄰數值兩兩交換。從第一個數值開始,如果相鄰兩個數的排列順序與我們的期望不同,則將兩個數的位置進行交換(對調);如果其與我們的期望一致,則不用交換。重復這樣的過程,一直到最後沒有數值需要交換,則排序完成。具體情況如下圖所示:

4. 冒泡排序 c語言 代碼

void BubbleSort(int *nArry, int nCount)
{
for(int i = 0; i < nCount; i++)

{

for(int j = 0; j < nCount - i -1; j++)

{

if(nArry[j + 1] < nArry[j])

{
int nTmp = nArry[j];

nArry[j] = nArry[j + 1];

nArry[j + 1] = nTmp;

}

}

}

}

5. 輸入10個數,用冒泡排序法按由小到大順序排序並輸出c語言的

冒泡排序的程序代碼如下:

#include<stdio.h>

int main()

{

int a[10]={0};

int i=0,j=0,t=0;

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

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

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

{for(j=0;j<10-i;j++){

if(a[j]>a[j+1])

{

t=a[j];

a[j]=a[j+1];

a[j+1]=t;

}}}

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

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

return 0;}

任意輸入十個數據,程序運行結果:

(5)冒泡排序法的代碼c語言擴展閱讀:

冒泡排序演算法的原理如下:

1、比較相鄰的元素。如果第一個比第二個大,就交換他們兩個。

2、對每一對相鄰元素做同樣的工作,從開始第一對到結尾的最後一對。在這一點,最後的元素應該會是最大的數。

3、針對所有的元素重復以上的步驟,除了最後一個。

4、持續每次對越來越少的元素重復上面的步驟,直到沒有任何一對數字需要比較。

6. c語言冒泡排序法代碼

冒泡法排序的原理是相鄰的兩個數進行比較,現在以「輸入10個數,對它們按小到大的順序排序」這道題,來展示冒泡法排序。
#include
int main(){
int a[10];
int i,j,t;
printf (" input 10 numbers: \n");
for (i=0;i<10;i++)
scanf("%d",&a[i] );
printf ("\n");
for(j=0;j<9;j++)
for(i=0;i<9-j;i++)
if (a[i]>a[i+1])
{t=a[i];a[i]=a[i+1];a[i+1]=t;}
printf("the sorted numbers: \n");
for(i=0;i<10;i++)
printf( "%d",a[i]);
printf("\n");
return 0;
}

7. 字元串的冒泡排序(一定要用c語言)

1、首先新建一個控制台應用程序。

8. C語言冒泡排序法代碼

冒泡排序是排序演算法的一種,思路清晰,代碼簡潔,常被用在大學生計算機課程中。「冒泡」這個名字的由來是因為越大的元素會經由交換慢慢「浮」到數列的頂端,故名。這里以從小到大排序為例進行講解。基本思想及舉例說明


冒泡排序的基本思想就是不斷比較相鄰的兩個數,讓較大的元素不斷地往後移。經過一輪比較就,選出最大的數;經過第2輪比較,就選出次大的數,以此類推。下面以對 3 2 4 1 進行冒泡排序說明。

9. 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;
}


望採納!

熱點內容
發生腳本錯誤怎麼辦 發布:2025-01-17 06:03:02 瀏覽:793
刪除文件夾時顯示在另一程序打開 發布:2025-01-17 06:03:01 瀏覽:543
安卓手機怎麼裝驅動 發布:2025-01-17 06:02:17 瀏覽:622
安卓微信拍了拍怎麼改 發布:2025-01-17 05:57:31 瀏覽:46
BMF伺服器的系統服務怎麼關 發布:2025-01-17 05:50:29 瀏覽:876
免刷安卓系統怎麼進入usb調試 發布:2025-01-17 05:48:21 瀏覽:837
資料庫的三層架構 發布:2025-01-17 05:17:36 瀏覽:149
雲頂之弈有人開腳本怎麼舉報 發布:2025-01-17 05:16:59 瀏覽:682
sql包含數字 發布:2025-01-17 05:11:56 瀏覽:292
密碼忘記了怎麼查看 發布:2025-01-17 05:02:30 瀏覽:682