三大排序法
1.冒泡排序法
冒泡排序法是通过两个相邻的数据进行比较然后立马交换
#include <stdio.h>
int main()
{
int i,j,t;
int a[10];
printf("请输入要排序的数字(升序):\n");
for(i=0;i<10;i++)
scanf("%d",&a[i]); //输入排序的数据
for(i=0;i<10;i++)
{
for(j=i+1;j<10;j++) //j=i+1 是将j放在i的后面,通过i与j的比较再进行交换
{
if(a[i]>a[j])
{
t=a[i]; //通过介质变量t存储a[i],来与a[j]进行交换
a[i]=a[j];
a[j]=t;
}
}
}
for(i=0;i<10;i++) //输出排序
printf("%d\t",a[i]);
return 0;
}
2.选择法排序
给每个位置选择放当前最小元素,比如从 n 个数中选择出最小数放入第 1 个位置,在剩余 n-1 个元素里面再选择出最小数放第 2 个位置,依此类推,直到最后一个元素肯定是最大数。
#include <stdio.h>
int main()
{
int a[10];
int i,j,t,min;
printf("请输入要排序的数(升序):\n");
for(i=0;i<10;i++) //输入数据