封装一个函数,利用冒泡排序,实现对整形数组的升序排序
#include<iostream>
using namespace std;
void maopao(int *a,int len){
for(int i=0;i<len-1;i++){
for(int j=0;j<len-1-i;j++){
if(*(a+j)>*(a+j+1))
swap(*(a+j),*(a+j+1));
//若没有if判断则是数组的倒序,一般用折中法。
/*也可以写成
if(a[j]>a[j+1])
swap(a[j],a[j+1]);*/
}
}
}
int main(){
//创建数组
int a[10]={4,3,6,9,1,2,10,8,7,5};
//创建函数,实现冒泡排序
//打印排序后的数组
int len=sizeof(a)/sizeof(a[0]);//涉及往函数中传数组的,要考虑数组的长度,求一下数组的长度往往更有效
maopao(a,len);
for(int i=0;i<10;i++){
cout<<a[i]<<" ";
}
return 0;
}