C語言每日練習(xí)之冒泡排序
更新時間:2021年11月11日 15:06:18 作者:小輝_Super
這篇文章主要介紹了C語言冒泡排序,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
分析
冒泡排序(Bubble Sort),是一種計算機科學(xué)領(lǐng)域的較簡單的排序算法。
冒泡排序(這里只討論從小到大排序)可以通過二種方式實現(xiàn),分別是將最小值依次移動到頭部和將最大值依次移動到尾部。
代碼實現(xiàn)
代碼采用從數(shù)組頭部輪詢的方式:
#include <stdio.h>
#define INTEGER_RANGE 10 //數(shù)字范圍
void bubule_sort(int *array, int len);
int main()
{
int i = 0;
int array[INTEGER_RANGE] = {0};
printf("請輸入10個數(shù)\n");
for(i = 0; i < INTEGER_RANGE; i++)
scanf("%d", array + i);
bubule_sort(array, INTEGER_RANGE);
printf("排序后:\n");
for(i = 0; i < INTEGER_RANGE; i++)
printf("%d ", array[i]);
printf("\n");
return 0;
}
/**
* @brief 冒泡排序
* @param array:數(shù)組 len:數(shù)組長度
* @return 空
*/
void bubule_sort(int *array, int len)
{
int i = 0;
int j = 0;
int tmp = 0;
for(i = 0; i < len - 1; i++)
{
for(j = 0; j < len -1 - i; j++)
{
if(array[j] > array[j + 1])
{
tmp = array[j];
array[j] = array[j + 1];
array[j + 1] = tmp;
}
}
}
}
運行結(jié)果

總結(jié)
本篇文章就到這里了,希望能夠給你帶來幫助,也希望您能夠多多關(guān)注腳本之家的更多內(nèi)容!
相關(guān)文章
C語言中帶頭雙向循環(huán)鏈表基本操作的實現(xiàn)詳解
無頭單向非循環(huán)鏈表結(jié)構(gòu)簡單,一般不會單獨用來存數(shù)據(jù)。而帶頭雙向循環(huán)鏈表的結(jié)構(gòu)較為復(fù)雜,一般用在單獨存儲數(shù)據(jù)。本文將介紹帶頭雙向循環(huán)鏈表的基本操作,需要的可以參考一下2022-11-11
C++修煉之構(gòu)造函數(shù)與析構(gòu)函數(shù)
本章節(jié)我們將學(xué)習(xí)類的6個默認(rèn)成員函數(shù)中的構(gòu)造函數(shù)與析構(gòu)函數(shù),并對比C語言階段的內(nèi)容來學(xué)習(xí)它們的各自的特性,感興趣的同學(xué)可以參考閱讀2023-03-03

