#include <iostream.h>
int main()
{
int data[5]={5,3,2,4,1};
int j,i,temp;
bool flag=true; //标志变量,用来标志某一轮中,是否有交换行为
for(i=1;i<5;i++) // 进行4轮比较 5-1次
{
if(flag==false)break; //若没有发生交换,则表示数组此时已经按照我们的需求排好序。
flag=false; //每一轮开始时,置为false
for(j=0;j<5-i;j++) //第一轮进行4次交换,第二轮是3次…… ……
{
if(data[j]>data[j+1])
{
flag=true; //有交换行为,置为true
temp=data[j];
data[j]=data[j+1];
data[j+1]=temp;
}
}
}
for(i=0;i<5;i++) //最后输出交换后的数组
{
cout<<data[i]<<endl;
}
return 0;
}
一个较好的C++冒泡排序
最新推荐文章于 2025-03-18 19:46:52 发布