cpp
//编写函数invert实现对一维数组的倒序
# include <iostream>
using namespace std;
class invert_array
{
private:
//int a[10]={0,1,2,3,4,5,6,7,8,9};
public:
void invert(int A[], int n){
int i,j,temp;
int m = (n-1)/2;
for(i=0;i<=m;i++){
j=n-1-i;
temp=A[i];
A[i]=A[j];
A[j]=temp;
}
cout<<"数组已经倒排!数组为形参"<<endl;
}
//用指针作为形参实现invert(int *A,int n),函数调用时实参为数组。
// void invert(int *A, int n){
// int *i,*j,temp,*p;
// int m = (n-1)/2;
// i = A;
// j = A+n-1;
// p=A+m;
// for(;i<p;i++,j--){
// temp=*i;
// *i=*j;
// *j=temp;
// }
// cout<<"数组已经倒排!指针为形参"<<endl;
// }
void show_array(int a[],int n){
int i=n;
for (i=0;i<10;i++)
cout <<a[i]<<"\t";
cout<<endl;
}
};
int main()
{
int a[10]={0,1,2,3,4,5,6,7,8,9};
int n=10;
invert_array ia;
ia.invert(a,n);
ia.show_array(a,n);
ia.invert(a,n);
ia.show_array(a,n);
system("pause");
return 0;
}
运行结果