定义一个动态数组,长度为变量n,用随机函数给数组各元素赋值。然后对数组各单元排序,定义swap函数交换数据单元,要求参数使用指针传递
时间: 2023-05-28 12:07:01 浏览: 145
#include <iostream>
#include <cstdlib>
#include <ctime>
using namespace std;
void swap(int* a, int* b) { // 定义swap函数交换数据单元
int temp = *a;
*a = *b;
*b = temp;
}
int main() {
int n;
cout << "请输入数组长度:";
cin >> n;
int* arr = new int[n]; // 定义一个动态数组,长度为变量n
srand(time(NULL)); // 随机函数种子
for (int i = 0; i < n; i++) { // 用随机函数给数组各元素赋值
arr[i] = rand() % 100;
}
for (int i = 0; i < n - 1; i++) { // 对数组各单元排序
for (int j = i + 1; j < n; j++) {
if (arr[i] > arr[j]) {
swap(&arr[i], &arr[j]); // 传递指针参数
}
}
}
for (int i = 0; i < n; i++) { // 输出排序后的数组
cout << arr[i] << " ";
}
delete[] arr; // 释放内存
return 0;
}