在 main 函数中定义和随机初始化一个(具有 20 个元 素/值域在-99 到 99 的)局部整数数组,对数组中的数据进行排序。重新随机初 始化数组,对数组中的数据按绝对值大小进行排序。
时间: 2024-05-27 09:11:54 浏览: 49
以下是示例代码:
#include <iostream>
#include <cstdlib>
#include <ctime>
#include <algorithm>
using namespace std;
void printArray(int arr[], int size) {
for (int i = 0; i < size; i++) {
cout << arr[i] << " ";
}
cout << endl;
}
int main() {
const int SIZE = 20;
int arr[SIZE];
srand(time(NULL));
for (int i = 0; i < SIZE; i++) {
arr[i] = rand() % 199 - 99; // 生成-99到99之间的随机数
}
cout << "Original array:" << endl;
printArray(arr, SIZE);
sort(arr, arr + SIZE); // 对数组进行排序
cout << "Sorted array:" << endl;
printArray(arr, SIZE);
for (int i = 0; i < SIZE; i++) {
arr[i] = rand() % 199 - 99; // 重新随机初始化数组
}
sort(arr, arr + SIZE, [](int a, int b) { // 按绝对值大小进行排序
return abs(a) < abs(b);
});
cout << "Sorted array by absolute value:" << endl;
printArray(arr, SIZE);
return 0;
}
阅读全文