#include<stdio.h>
void move(int a[],int n,int i);
int main()
{
int a[20],n,m,i;
printf("input the numbers:\n");
scanf("%d",&n);
for(m=0;m<n;m++)
{
scanf("%d",&a[m]);
}
printf("orignal arrary are :\n");
for(m=0;m<n;m++)
{
printf("%d ",a[m]);
}
printf("how many place you want to move:");
scanf("%d",&i);
move(a,n,i);
printf("after moved arrary are :\n");
for(m=0;m<n;m++)
{
printf("%d ",a[m]);
}
getch();
}
void move(int b[],int k,int l)
{
int c[20],i=0,j=0;
for(i=k-l;i<k;i++)
{
c[j++]=b[i];
}
for(i=k-l-1;i>=0;i--)
{
b[i+l]=b[i];
}
for(i=0;i<l;i++)
{
b[i]=c[i];
}
}
当然也可以用递归实现上述代码