用冒泡排序法对任意输入的10个数由小到大进行排序。
- 冒泡法的基本思路是:对n个数进行冒泡排序,那么要进行n-1趟比较,在第一趟比较中要进行n-1次两两比较,在第j趟比较中要进行n-j次两两比较。
#include <stdio.h>
void main()
{
int i,j,a[11];
printf("请输入10个数:
");
for(i=1;i<11;i++)
scanf("%d",&a[i]);
for(i=1;i<10;i++) /*变量i代表比较的次数*/
for(j=1;j<11-i;j++) /*变量j代表每趟两两比较的次数*/
if(a[j]>a[j+1])/*利用a[0]作为中间变量实现两值互换*/
{
a[0]=a[j];
a[j]=a[j+1];
a[j+1]=a[0];
}
printf("排序后的顺序是:
");
for(i=1;i<11;i++)
printf("%5d",a[i]);
}