首先,从头开始往后扫描整个序列,在扫描过程中逐次比较相邻两个元素的大小.若相邻两个元素中,前面的元素大于后面的元素,则将它们互换,最后整个序列中最大者换到了最后的位置.然后将最大一个元素除外,用相同的办法扫描其他数据直到整个序列有顺序为止.
#define LEN 9
using namespace std;
int main()
{
int nArray[LEN];
for(int i=0;i<LEN;i++)
{
nArray[i]=LEN-i; //赋初值
}
cout<<"原始数据为:"<<endl;
for(int j=0;j<LEN;j++)
{
cout<<nArray[j]<<" ";
}
cout<<endl;
for(int m=LEN-1;m>0;m--)
{
int temp;
for(int n=0;n<m;n++)
{
if(nArray[n]>nArray[n+1])
{
temp=nArray[n];
nArray[n]=nArray[n+1];
nArray[n+1]=temp;
}
}
}
cout<<"排序结果:"<<endl;
for(i=0;i<LEN;i++)
{
cout<<nArray[i]<<" ";
}
return 0;
}