C语言代码 冒泡排序

 代码示例:

#include 

//void bubble_sort(int* arr, int sz)//形参是指针的形式
void bubble_sort(int arr[], int sz)//形参是数组的形式
{
	int i = 0;
	for (i = 0; i < sz - 1; i++)//冒泡排序的趟数是数组元素个数减一
	{
		int j = 0;
		for (j = 0; j < sz - 1 - i; j++)//一趟冒泡排序
		{
			if (arr[j] > arr[j + 1])//相邻两元素比较,交换
			{
				int tmp = 0;
				tmp = arr[j];
				arr[j] = arr[j + 1];
				arr[j + 1] = tmp;
			}
		}
	}
}
int main()
{
	int arr[] = { 9,8,7,6,5,4,3,2,1 };
	int sz = sizeof(arr) / sizeof(arr[0]);
	bubble_sort(arr,sz);//冒泡排列算法,把数组排成升序
	int i = 0;
	for (i = 0; i < sz; i++)//排序好数组打印
	{
		printf("%d ", arr[i]);
	}
	return 0;
}

运行结果:

1 2 3 4 5 6 7 8 9

你可能感兴趣的:(c语言,算法)