10个整数从小到大的排序

1 冒泡法

#include<stdio.h>
int main()
{
	int j,i,t,a[10];
	for(i=0;i<10;i++)
	scanf("%d",&a[i]);
	for(i=0;i<9;i++)
	 for(j=0;j<9-i;j++)
	  if(a[j]>a[j+1])
	  {
	  	t=a[j];
	  	a[j]=a[j+1];
	  	a[j+1]=t;
	  }
	for(i=0;i<10;i++)
	printf("%d ",a[i]);
	printf("\n");
	return 0;
}

2 选择排序法

#include<stdio.h>
int main()
{
	int i,j,t,k,a[10];
	for(i=0;i<10;i++)
	scanf("%d",&a[i]);
	for(i=0;i<9;i++)
	  {
	  k=i;
	  for(j=i+1;j<10;j++)
	  if(a[k]>a[j])
	     k=j;
	     t=a[k];
	     a[k]=a[i];
	     a[i]=t;
	  }
	for(i=0;i<10;i++)
	printf("%d ",a[i]);
	printf("\n");
	return 0;
}

我觉得冒泡法是两个两个的比较,将最大的先排出,就像鱼吐泡泡一样,靠近水面的是最大的,往下依次小。而选择排序法是先找出最小的,然后与第一个位置的数互换,接着找出剩下数中最小的,与第二个位置的数换,依次这样操作·····

猜你喜欢

转载自blog.csdn.net/weixin_43534549/article/details/86707597