学习使用C语言进行冒泡排序,代码如下:
/*
============================================================================
Name : BubbleSort.c
Author : zlj
Version :
Copyright : soft.rz
Description : Hello World in C, Ansi-style
============================================================================
*/
#include <stdio.h>
#define SIZE 11
void bubble_sort(int a[], int n);
void bubble_sort(int a[], int n)
{
int i, j, temp;
for (j = 0; j < n - 1; j++)
{
for (i = 0; i < n - 1 - j; i++)
{
if(a[i] > a[i + 1])
{
temp = a[i];
a[i] = a[i + 1];
a[i + 1] = temp;
}
}
printf("第 %d 轮排序: \n", j+1);
for (int k =0;k<n;k++)
{
printf("%d \t", a[k]);
}
printf("\n");
}
}
int main()
{
int number[SIZE] = {95, 45, 15, 78, 84, 51, 24, 12, 38, 52, 66};
int i;
printf("冒泡排序原始数据为:\n");
for (i = 0; i < SIZE; i++)
{
printf("%d\t", number[i]);
}
printf("\n\n");
bubble_sort(number, SIZE);
printf("\n最终数据为:\n");
for (i = 0; i < SIZE; i++)
{
printf("%d\t", number[i]);
}
}
执行结果如下: