第一种方法:指针法
#include<stdio.h>
#include<stdlib.h>
int w(int *d,int e,int g)
{
int i,j,t;
int *r;
j=0;
for(i=0;i<g;i++)
{
t=*(d+i);
*(d+i)=*(d+e-g+j);
*(d+e-g+j)=t;
j++;
}
return *d;
}
int main()
{
int a[100];
int i,j,k,n,m;
scanf("%d%d",&n,&m);
for(i=0;i<n;i++)
scanf("%d",&a[i]);
k=n;
w(a,k,m);
for(i=0;i<n;i++)
printf("%d ",a[i]);
printf("\n");
system("pause");
return 0;
}
第二种方法:数组法
#include<stdio.h>
#include<stdlib.h>
void w(int d[],int e,int g)
{
int i,j,t;
//int *r;
j=e;
for(i=0;i<g;i++)
{
t=d[i];
d[i]=d[j-1];
d[j-1]=t;
j--;
}
for(i=0;i<e;i++)
printf("%d ",d[i]);
printf("\n");
//return *d;
}
int main()
{
int a[100];
int i,j,k,n,m;
scanf("%d%d",&n,&m);
for(i=0;i<n;i++)
scanf("%d",&a[i]);
k=n;
w(a,k,m);
/* for(i=0;i<n;i++)
printf("%d ",a[i]);
printf("\n");*/
system("pause");
return 0;
}
时间: 2024-10-05 04:44:59