定义一个动态数组,长度为变量n,用随机数给数组各元素赋值,然后对数组各单元排序,定义swap函数交换数据单元,要求参数使用指针传递。
时间: 2023-04-27 09:01:20 浏览: 352
可以使用以下代码来定义一个动态数组,长度为变量n,并用随机数给数组各元素赋值:
```c++
#include <iostream>
#include <cstdlib>
#include <ctime>
using namespace std;
void swap(int *a, int *b) {
int temp = *a;
*a = *b;
*b = temp;
}
int main() {
int n;
cout << "请输入数组长度n:";
cin >> n;
int *arr = new int[n];
srand(time(NULL));
for (int i = 0; i < n; i++) {
arr[i] = rand() % 100;
}
cout << "排序前的数组为:";
for (int i = 0; i < n; i++) {
cout << arr[i] << " ";
}
cout << endl;
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]);
}
}
}
cout << "排序后的数组为:";
for (int i = 0; i < n; i++) {
cout << arr[i] << " ";
}
cout << endl;
delete[] arr;
return 0;
}
```
其中,swap函数用于交换两个数据单元,参数使用指针传递。在主函数中,先定义一个长度为n的动态数组,然后使用srand和time函数生成随机数,给数组各元素赋值。接着使用冒泡排序对数组各单元进行排序,最后输出排序前后的数组。最后,记得使用delete[]释放动态数组的内存空间。
阅读全文
相关推荐


















