#include<stdio.h>
#include<stdlib.h>
#include<string.h>
int n,set[110];
void Bu_sort()
{
int swap;
for(int i=1;i<=n;i++)//进行n趟排序
{
swap=0;
for(int j=1;j<=n-i;j++)//每趟交换n-i次
{
if(set[j]>set[j+1])
{
set[j]=set[j+1]^set[j];
set[j+1]=set[j+1]^set[j];
set[j]=set[j+1]^set[j];
swap=1;
}
}
if(swap==0)//如果某一趟中不存在交换了,则已经排好序了,直接跳出。
break;
}
}
int main()
{
while(scanf("%d",&n),n)
{
memset(set,0,sizeof(set));
for(int i=1;i<=n;i++)
{
scanf("%d",&set[i]);
}
Bu_sort();
for(int i=1;i<=n;i++)
{
printf("%d ",set[i]);
}
printf("\n");
}
system("pause");
return 0;
}
转载于:https://www.cnblogs.com/zhangshu/archive/2011/08/09/2132037.html