//冒泡排序,从小到大(方向可改) 。
#include <stdio.h>
void bubble_sort(int a[], int n); //申明函数"bubble_sort"
int number[10000000]; //在主函数外面定义数组可以更长
void bubble_sort(int a[], int n) //下面是函数bubble_sort的程序
{
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]后面那个) 交换
a[i]=a[i+1]; //基本的交换原理"c=a;a=b;b=c"
a[i+1]=temp;
}
}
}
}
int main() //主函数
{
int i,n;
scanf("%d",&n); //输入数字个数for(int j=0;j<n;j++) scanf("%d",&number[j]) ;
bubble_sort(number,n); //引用函数bubble_sort
for (i=0;i<n-1;i++) //输出传来的排序好的数组
printf("%d ",number[i]); //这里这么写是因为有些题有格式要求(最后一个数后面不能有空格)
printf("%d\n",number[i]);
return 0;
}