编写C++完整程序,按照指定长度生成动态数组,用随机数对数组元嘉进行赋值,然后逆置该数组元嘉。例如:数组A的初始值为(6,3,7,8,2》,逆置后的值为(2,8,7,3,6]。要求: 输出逆置前、后的数组元素序列。
时间: 2024-05-03 18:21:36 浏览: 66
```c
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main()
{
int n; // 数组长度
printf("请输入数组长度:");
scanf("%d", &n);
int *arr = (int *)malloc(n * sizeof(int)); // 动态生成数组
if (arr == NULL) // 判断是否分配成功
{
printf("动态分配数组失败!");
return 0;
}
srand(time(NULL)); // 初始化随机数种子
printf("生成的随机数组为:\n");
for (int i = 0; i < n; i++) // 随机赋值
{
arr[i] = rand() % 100; // 生成0-99的随机整数
printf("%d ", arr[i]);
}
// 数组元素逆置
int temp;
for (int i = 0; i < n / 2; i++)
{
temp = arr[i];
arr[i] = arr[n - i - 1];
arr[n - i - 1] = temp;
}
printf("\n逆置后的数组为:\n");
for (int i = 0; i < n; i++) // 输出逆置后的数组
{
printf("%d ", arr[i]);
}
free(arr); // 释放动态分配的内存
return 0;
}
```
阅读全文