一:冒泡排序是在两个相邻元素之间进行比较的过程将一个无序表变成一个有序表。
第一轮比较:
for(j=0;j<n-1;j++)
if(a[j]>a[j+1])
{
t=a[j];
a[j]=a[j+1];
a[j+1]=t;
}
第二轮比较:
for(j=0;j<n-2;j++)
if(a[j]>a[j+1])
{
t=a[j];
a[j]=a[j+1];
a[j+1]=t;
}
第三轮比较:
for(j=0;j<n-3;j++)
if(a[j]>a[j+1])
{
t=a[j];
a[j]=a[j+1];
a[j+1]=t;
}
设置嵌套循环:
for(i=1;i<=n-1;i++)
for(j=0;j<n-i;j++)
if(a[j]>a[j+1])
{
t=a[j];
a[j]=a[j+1];
a[j+1]=t;
}
数组大小不确定,采用宏定义的方式
#define N 10
int main()
{...
int a[N];}
二:选择排序
第一轮找出最小的元素放在最前面,第二轮比较从第二个元素开始找次小的
for(i=0;i<n-1;i++)
for(j=i+1;j<n;j++)
if(a[j]>a[i])
{
t=a[i];
a[i]=a[j];
a[j]=t;
}