有n个整数,使其前面各数顺序向后移m个位置,最后m个数变成最前面m个数
include<stdio.h>
#include<stdlib.h>
#if(1)
void move(int *p,int n,int m)//n为元素后移位置,m为元素个数
{
int *p1;
int i;
for(i=0,p1=p;p1<p+n;p1++,i++)
{
*p1=*(p+m-n+i);
}
for(i=0,p1=p+n;p1<p+m;p1++,i++)
{
*p1=*(p+i);
}
for(i=m;i>0;i--)
{
printf("%-2d",*(p1-i));
}
}
void main()
{
int i,n,m;
int c[100];
printf("请输入后移个数:\n");
scanf("%d",&n);
printf("请输入元素个数:\n");
scanf("%d",&m);
printf("请输入任意元素:\n");
for(i=0;i<m;i++)
{
scanf("%d",c+i);
}
move(c,n,m);
printf("\n");
system("pause");
}
#endif