/*今天看过冒泡排序之后对其思想又增进了一步,其基本思想:每次比较两个相邻的元素,如果它们的顺序错误就把它们交换过来.冒泡排序的核心是双重嵌套循环。*/ #include<stdio.h> int main() { int a[100],i,j,t,n; scanf("%d",&n);//输入一个数n,表示接下来有n个数 for(i=1;i<=n;i++)//循环读入n个数到数组a中 scanf("%d",&a[i]); for(i=1;i<=n-1;i++)//n个数排序,只用进行n-1趟 { for(j=1;j<=n-i;j++)//从第一位数开始比较直到最后一个尚未归位的数 { if(a[j]<a[j+1]) { t=a[j]; a[j]=a[j+1]; a[j+1]=t; } } } for(i=1;i<=n;i++)//输出结果 printf("%d ",a[i]); return 0; }