冒泡排序算法正确的理解是(c语言冒泡排序从大到小)
采用气泡排序法,按照从小到大的顺序对任意输入的10个个数进行排序。
实施过程:
)在两个for循环中实现鼓泡对齐的全过程,外层for循环决定鼓泡对齐的匝数,内层for循环决定每匝比较两两次的次数。
(2)程序代码如下:
#包含
int main () )
{
int i,j,t,a[11]; //将变量和数组定义为基本整数
printf (请输入' 10个。 \n );
for(I=1; i11; I )
scanf('%d ',a[i] ); //从键盘输入10个
for(I=1; i10; I//变量I表示比较的圈数
for(j=1; j11-i; () ) /变最) )表示每次两次或两次的比较次数
if(a ) if(a ) j1 ) )
{
t=a[j]; ) )生产利用中间的孩子实现二值交换
a[j]=a[j 1];
a[j 1]=t;
}
printf ('排序后的顺序为\n );
for(I=1; i=10; I )
printf ()、a(I ); //按照胃泡排序的顺序输出
printf((n );
返回0;
}
执行结果:
请输入10个:
66 32 23 45 25 5 15 69 46 37
排序后的顺序如下。
5 15 23 25 32 37 45 46 66 69
技术要点:
在本例中,需要用鼓泡法按照从小到大的顺序排列10个个数。 鼓泡法的基本思路是,排序n个鼓泡时进行n-1次比较,第1次比较进行n-j次两比较,第j次比较进行n-j次两比较。 从这一基本思路可以看出,匝数决定了比较的次数,可以很容易地将两个for循环联系起来。