哪位高手知道如何使用冒泡法对5个整数1,7,12,16,20按从小到大的顺序排列?望详细解释一下,谢谢

来源:百度知道 编辑:UC知道 时间:2024/05/11 19:45:33

#include<stdio.h>
void main()
{int a[]={7,1,16,12,20};
int i,j,temp;

for(i=0;i<4;i++)
{for(j=i+1;j<5;j++)
if(a[i]>a[j])
{temp=a[i];
a[i]=a[j];
a[j]=temp;
}
}
for (i=0;i<5;i++)
printf("%d ",a[i]);
}

解题思路:先用数组中的第一个位置的数和后面的4个数进行比较,将较小的数放在前面,第一个位置总是较小的数,这样进行了第一次循环以后,最小的数就到第一位了,第二次用现在的第二个位置的数和后面的3个数进行比较,因为这时第一个位置是最小的数了,进行完第二次循环,现在第二个位置就是次小的数了,依次进行下去....