请问我写的这个 用函数实现将n个数按照输入顺序的逆序排列 哪里错了呢,为啥输出是这个?
#include <iostream>
using namespace std;
void inverse(int *p);
int main()
{
int n;
cout<<"输入数组元素的个数n"<<endl;
cin>>n;
int arr[n];
cout<<"输入你的数组"<<endl;
cin>>arr[n];
int *p=arr;
for(int i=0;i<n;i++)
{
cout<<arr[i]<<endl;
}
cout<<"逆置后"<<endl;
inverse(arr);
for(int i=0;i<n;i++)
{
cout<<arr[i]<<endl;
}
return 0;
}
void inverse(int *p)
{
// int *a=arr;
int n;
int arr[n];
int temp;
for(int i=0;i<n/2;i++)
{
temp=*(p+i);
*(p+i)=*(p+n-1-i);
*(p+n-1-i)=temp;
}
}