用C++语言写一个完整代码,输入一个数组, 请将数组中的各个元素反序排列 void inv(int *x, int n)
时间: 2024-09-08 09:02:52 浏览: 32
以下是一个使用C++语言实现的完整代码示例,它定义了一个`inv`函数,该函数接收一个整数数组`x`及其长度`n`,并将数组中的元素反序排列。
```cpp
#include <iostream>
using namespace std;
// 函数声明
void inv(int *x, int n);
// 主函数
int main() {
int arr[] = {1, 2, 3, 4, 5}; // 示例数组
int n = sizeof(arr) / sizeof(arr[0]); // 数组长度
// 输出原数组
cout << "原始数组: ";
for (int i = 0; i < n; ++i) {
cout << arr[i] << " ";
}
cout << endl;
// 调用inv函数进行反序
inv(arr, n);
// 输出反序后的数组
cout << "反序后的数组: ";
for (int i = 0; i < n; ++i) {
cout << arr[i] << " ";
}
cout << endl;
return 0;
}
// 函数定义
void inv(int *x, int n) {
int temp;
for (int i = 0; i < n / 2; ++i) {
temp = x[i];
x[i] = x[n - 1 - i];
x[n - 1 - i] = temp;
}
}
```
这段代码首先在`main`函数中定义了一个整数数组`arr`并初始化。通过`sizeof`运算符计算数组长度`n`。然后,使用`inv`函数将数组反序,并在反序前后分别打印数组内容。
`inv`函数的实现通过交换首尾元素的方式来反序数组,循环执行直到达到数组中间的位置。