版权声明:本文为博主原创文章,转载请说明出处。 https://blog.csdn.net/qq278672818/article/details/83186409
注意m可能大于n,要先求余
#include<stdio.h>
void revesal(int *num, int beg, int len)
{
int i,temp;
for(i=0;i<len/2;i++)
{
temp = num[i+beg];
num[i+beg] = num[beg+len-1-i];
num[beg+len-1-i] = temp;
}
}
int main()
{
int n,m,i;
scanf("%d %d",&n,&m);
m = m%n;
int num[n];
for(i=0;i<n;i++)
scanf("%d",&num[i]);
if(n == 1)
{
printf("%d",num[0]);
return 0;
}
revesal(num,0,n);
revesal(num,0,m);
revesal(num,m,n-m);
for(i=0;i<n-1;i++)
{
printf("%d ",num[i]);
}
printf("%d",num[i]);
return 0;
}