C++ 将n个整数按输入顺序的逆序排列,要求应用带指针参数的函数实现。
时间: 2024-03-25 10:39:51 浏览: 73
剖析C++编程当中指针作为函数参数的用法
5星 · 资源好评率100%
可以使用一个函数来实现将n个整数按输入顺序的逆序排列,可以使用指针参数来传递数组并进行修改,函数的原型如下:
```c++
void reverse(int* arr, int n);
```
其中,arr是指向整数数组的指针,n是整数数组的大小。
函数的实现如下:
```c++
void reverse(int* arr, int n) {
int* start = arr;
int* end = arr + n - 1;
while (start < end) {
int temp = *start;
*start = *end;
*end = temp;
start++;
end--;
}
}
```
该函数使用两个指针start和end,分别指向数组的开头和结尾,然后交换它们所指向的值,直到start指向的位置超过或等于end指向的位置。
可以在主函数中调用该函数来实现将n个整数按输入顺序的逆序排列,如下所示:
```c++
#include <iostream>
using namespace std;
void reverse(int* arr, int n);
int main() {
int n;
cout << "请输入整数的个数:";
cin >> n;
int* arr = new int[n];
cout << "请输入" << n << "个整数:";
for (int i = 0; i < n; i++) {
cin >> arr[i];
}
reverse(arr, n);
cout << "逆序排列后的结果为:";
for (int i = 0; i < n; i++) {
cout << arr[i] << " ";
}
cout << endl;
delete[] arr;
return 0;
}
void reverse(int* arr, int n) {
int* start = arr;
int* end = arr + n - 1;
while (start < end) {
int temp = *start;
*start = *end;
*end = temp;
start++;
end--;
}
}
```
运行程序,输入整数的个数和整数序列,程序将输出逆序排列后的整数序列。
阅读全文