C语言实现冒泡排序
void bubbleSort(int *arr,int n)
{
int m,i,j;
for(i=0;i<n-1;i++)
for(j=0;j<n-1-i;j++)
if(arr[j]>arr[j+1])
{
m=arr[j];
arr[j]=arr[j+1];
arr[j+1]=m;
}
}
实例
# include <stdio.h>
int main(void)
{
int a[] = {1000,200,15,-45,1522,33,-59,6648,-5,-585,5645,568,12125,22,168};
int n; //存放数组a中元素的个数
int i; //比较的轮数
int j; //每轮比较的次数
int buf; //交换数据时用于存放中间数据
n = sizeof(a) / sizeof(a[0]); /*a[0]是int型, 占4字节, 所以总的字节数除以4等于元素的个数*/
for (i=0; i<n-1; ++i) //比较n-1轮
{
for (j=0; j<n-1-i; ++j) //每轮比较n-1-i次,
{
if (a[j] < a[j+1])
{
buf = a[j];
a[j] = a[j+1];
a[j+1] = buf;
}
}
}
for (i=0; i<n; ++i)
{
printf("%d\x20", a[i]);
}
printf("\n");
return 0;
}