选择排序
#define N 6
#include <stdio.h>
int main()
{
int a[N];
int i,j,t,k;
for(i=0;i<N;i++)
scanf("%d",&a[i]);
for(i=0;i<N-1;i++)
{
k=i;
for(j=i;j<=N-1;j++)
{
if(a[k]<a[j])
k=j;
}
if(k != i)
{
t=a[k];
a[k]=a[i];
a[i]=t;
}
}
for(i=0;i<N;i++)
printf("%d ",a[i]);
}
冒泡排序
#define N 6
#include <stdio.h>
int main()
{
int a[N];
int i,j,t;
for(i=0;i<N;i++)
scanf("%d",&a[i]);
for(i=0;i<N-1;i++)
{
for(j=0;j<N-i-1;j++) //注意这里没有等于
{
if(a[j]<a[j+1])
{
t=a[j];
a[j]=a[j+1];
a[j+1]=t;
}
}
}
}
for(i=0;i<N;i++)
printf("%d ",a[i]);
}
升级版冒泡排序
#define N 6
#include <stdio.h>
int main()
{
int a[N];
int i,j,t;
for(i=0;i<N;i++)
scanf("%d",&a[i]);
for(i=0;i<N-1;i++)
{
for(j=i;j<=N-1;j++)
{
if(a[i]<a[j])
{
t=a[i];
a[i]=a[j];
a[j]=t;
}
}
}
for(i=0;i<N;i++)
printf("%d ",a[i]);
}