C++语言数组从小到大排序
#include <iostream>
#include <algorithm>
using namespace std;
int NumA[8] = { 44, -183, 777, 1999, -1000, 43, 72, -3826 };
int NumB[100];
void sortArray(int arr[], int n) {
/*C++的sort函数有三个参数,sort(begin, end, cmp),其中begin为指向待sort()的数组的第一个元素的指针,
end为指向待sort()的数组的最后一个元素的下一个位置的指针,cmp参数为排序准则,cmp参数可以不写,如果
不写的话,默认从小到大进行排序。
如果要实现从大到小排序的话,就需要将cmp重写。具体如下:
bool cmp(int a,int b)//使用sort排序定义从大到小
{
return a>b;
}
*/
sort(arr, arr + n);
copy(arr, arr + n, NumB);
}
void printArray(int arr[], int n) {
for (int i = 0; i < n; i++) {
cout << arr[i] << " ";
}
cout << endl;
}
int main() {
// sort NumA in order from small to large into NumB
sortArray(NumA, 8);
cout << "NumB (sorted): ";
printArray(NumB, 8);
return 0;
}