冒泡排序:是一种从后往前的排序方法,比较相邻的两个数,如果第一个比第二个大就交换它们,依次往下比较,一趟下来就确定了最后的的元素(该数组的最大数)。若该数组有n个元素,需进行n-1趟排序,第i趟比较的次数为n-1-i次。
eg:5 4 3 2 1 //5个元素
4 3 2 1 5 //第一趟
3 2 1 4 5 //第二趟
2 1 3 4 5 //第三趟
1 2 3 4 5 //第四趟
c语言实现冒泡排序
#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
void bubble_sort(int a[])
{
int i=0;
for(i=0;i<9;i++)//进行9次循环,实现9趟比较
{
int j=0;
for(j=0;j<9-i;j++)//每一趟中进行9-i次比较
{
if(a[j]>a[j+1])//从大到小排序
//if(a[j]<a[j+1])//从小到大排序
{
int temp=a[j];
a[j]=a[j+1];
a[j+1]=temp;
}
}
}
}
int main()
{
int a[10]={0};
int i=0;
for(i=0;i<10;i++)
{
scanf("%d",&a[i]);
}
bubble_sort(a);
for(i=0;i<10;i++)
{
printf("%d ",a[i]);
}
printf("\n");
system("pause");
return 0;
}