冒泡排序
冒泡排序的基本思想
每趟不断将记录两两比较,并按“先小后大”的规则进行交换。
例:
21 ,25 ,49 ,25*,16,08(注:星号为重复数字)
第一趟: 21 ,25 ,25*,16 ,08 ,49
第二趟: 21 ,25 ,16 ,08 ,25*,49
第三趟: 21 ,16 ,21 ,25 ,25*,49
第四趟: 16 ,08 ,21 ,25 ,25 ,49
第五趟: 08 ,16 ,21 ,25 ,25*,49
代码实现
#include<stdio.h>
int main()
{
int m,n,a[20],i,j;
printf("请输入数据的个数:\n");
scanf("%d",&n);
printf("请输入数据\n");
for(i=0;i<n;i++)
scanf("%d",&a[i]);
//主要代码
for(i=0;i<n;i++)
{
for(j=0;j<n-i-1;j++)
if(a[j]>a[j+1])
{
m=a[j];
a[j]=a[j+1];
a[j+1]=m;
}
}
for(i=0;i<n-1;i++)
printf("%d,",a[i]);
printf("%d",a[n-1]);
return 0;
}
来源:CSDN
作者:fpingyu
链接:https://blog.csdn.net/weixin_44519848/article/details/103927729