问题描述:
封装一个函数,利用冒泡排序,实现对整型数组的升序排序
例如数组:int arr[10] = { 4,3,6,9,1,2,10,8,7,5 };
实现思路:
1.创建一个整型数组
2.计算数组长度
3.封装冒泡排序函数进行升序排序
4.封装打印函数进行打印输出
代码如下:
#include<iostream>
using namespace std;
//利用冒泡排序,对数组进行升序
void bubbleSort(int* arr, int len)
{
for (int i = 0; i < len; i++)
{
for (int j = i + 1; j < len; j++)
{
if (arr[i] > arr[j]) //实现升序
{
int temp = arr[i];
arr[i] = arr[j];
arr[j] = temp;
}
}
}
}
//打印函数
void Print(int* arr, int len)
{
for (int i = 0; i < len; i++)
{
cout << arr[i] << " ";
}
}
int main()
{
int arr[10] = { 4,3,6,9,1,2,10,8,7,5 };
int len = sizeof(arr) / sizeof(arr[0]); //计算数组长度,sizeof(arr)为整个数组大小,sizeof(arr[0])为单个元素大小)
cout << "排序前数组元素为: " << endl;
Print(arr, len); //将数组和数组长度传入到函数中,利用数组名传递数组,形参用指针变量接收
cout << endl;
bubbleSort(arr, len); //arr代表数组的首地址
cout << "排序后数组元素为: " << endl;
Print(arr, len);
return 0;
}