现在的位置: 首页 > 综合 > 正文

采用冒泡排序法,将数组中元素按照从小到大的顺序排序

2012年05月30日 ⁄ 综合 ⁄ 共 677字 ⁄ 字号 评论关闭

 #include<iostream.h>
void sort(int[],int);
void main()
{
 int b[5]={71,83,52,35,100};
 cout<<"原始数据为:"<<endl;
 for(int i=0;i<5;i++)
  cout<<b[i]<<"\t";
     cout<<endl;
  sort(b,5);          //数组名作为实参调用函数sort()
  cout<<"排序后的数据为:"<<endl;
 for(i=0;i<5;i++)
  cout<<b[i]<<"\t";
  cout<<endl;  
}
void sort(int a[],int len)         //数组名作为函数的形参
{
 int temp,i,j,flag;
 for(i=1;i<len;i++)
 {
  flag=1;            //设交换标志,flag为1表示未交换
  for(j=0;j<len-i;j++)
  {
   if(a[j]>a[j+1])
   {
    flag=0;
    temp=a[j];
    a[j]=a[j+1];
    a[j+1]=temp;
   }
  }
  if(flag==1)         //某次未发生交换,排序结束
   break;
 }
}

 

注释:当用数组b作实参调用函数sort()时,将数组b的地址传递给形参数组a,a和b指向的是一个数组空间,因此在函数sort()中对数组a从小到大排序时,数组b中的数据也随之改变。(在数组作为函数参数时,形参数组一般不指定大小,大小由实参传递。)


 

抱歉!评论已关闭.