答案:【冒泡排序算法】void BubbleSort(DataType A[], int n)
{ //采用冒泡排序的方法对数组A中的n的元素排序DataType x;//用于交换时的暂存
int i,j;
bool exchange;for(i=0;i<n;i++)
{
exchange=false;
for(j=n-1;j>i;j--)
{
if(A[j]<A[j-1])
{//交换记录
x=A[j];
A[j]=A[j-1];
A[j-1]=x;
exchange=true;
}
}
if(!exchange)
{
//如果本趟排序未发生交换,提前交换终止算法
return;
}
}
return;
}【使得例子】
#include "iostream"
using namespace std;
#define DataLeng 5
typedef int DataType;//显示数据:
void printData(DataType A[], int n)
{for(int i=0;i<n;i++)
{
cout<<A[i]<<" ";
}
cout<<endl;
return;
}
//冒泡排序:
void BubbleSort(DataType A[], int n);void main()
{int data[5]={3,8,5,4,6};
//排序前:
cout<<"<1>没有排序前的顺序是:"<<endl;
printData(data,DataLeng);//排序:
BubbleSort(data,DataLeng);//排序后:
cout<<"<2>排序后的顺序是:"<<endl;
printData(data,DataLeng);return;
#include <iostream>
}
#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 i=0;i<LEN;i++)cout<<nArray[i]<<" ";
cout<<endl;
//开始冒泡
{
int temp;
for(int i=LEN-1;i>=0;i--)
for(int j=0;j<i;j++){
if(nArray[j]>nArray[j+1]){
temp=nArray[j];
nArray[j]=nArray[j+1];
nArray[j+1]=temp;
}
}
}
//结束冒泡
cout<<"排序结果:"<<endl;
for(int i=0;i<LEN;i++)cout<<nArray[i]<<" ";
return 0;
}
上一个:C++的system函数怎样使用?
下一个:通讯录怎样用C++编写啊