排序函数调用--传递数组名

/*
利用函数调用形式,传递一维数组名进行函数调用

(1)设计冒泡排序函数,在主函数中调用。

(2)设计选择排序函数,在主函数中调用。

(3)设计逆序存放函数,在主函数中调用。

*/
#include <iostream>
using namespace std;

void select_sort(int array[ ],int n); //选择排序
void bubble_sort(int array[ ],int n); //冒泡排序
void reverse_storage(int array[ ], int n);//逆序存储

int main()
{
 int a[10],i;
 cout<<"enter the originl array:"<<endl;
 for(i=0;i<10;i++) cin>>a[i];         //输入10个无序数
 cout<<endl;
 select_sort(a,10);             //选择排序函数调用,数组名作实参
 cout<<"after the select sort,the sorted array:"<<endl;
 for(i=0;i<10;i++)  cout<<a[i]<<"  ";   //输出10个已排好序的数

 cout<<"\n\nenter the originl array again:"<<endl;
 for(i=0;i<10;i++)  cin>>a[i];         //重新输入10个无序数
 bubble_sort(a,10);
 cout<<"after the bubble sort,the sorted array:"<<endl;
 for(i=0;i<10;i++)  cout<<a[i]<<"  ";   //输出10个已排好序的数
 
 reverse_storage(a,10);
 cout<<"\n\nafter reverse storage,the array:"<<endl;
 for(i=0;i<10;i++)  cout<<a[i]<<"  ";   //输出逆序存储后的数组内容

 cout<<endl;
  return 0;
}


void select_sort(int array[ ],int n)   //形参array是数组名,选择排序
{int i,j,k,t;
 for(i=0;i<n-1;i++)
  { k=i;
     for(j=i+1;j<n;j++)                    
       if(array[j]<array[k]) k=j;
    t=array[k];   array[k]=array[i];   array[i]=t;
   }
} 

void bubble_sort(int array[],int n)  //形参array是数组名,冒泡排序
{ int i,j,t;
  for(i=0;i<n-1;i++)
  {
     for(j=0;j<n-1-i;j++)
		 if(array[j]>array[j+1])
		 {
		   t=array[j];
		   array[j]=array[j+1];
		   array[j+1]=t;
		 }  
  }
}

void reverse_storage(int array[ ], int n)//逆序存储
{
  int i,t;
  for(i=0;i<=n/2;i++)
  {
     t=array[i];
	 array[i]=array[n-1-i];
	 array[n-1-i]=t;
  }
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值