n位数循环后移m位
程序实现
#include <iostream>
using namespace std;
int n,m,i,j;
int main()
{
void move(int *p,int x,int y);
cout<<"请输入数据个数n:";
cin>>n;cout<<endl;
int *array=new int[n];
cout<<"请输入移位次数m:";
cin>>m;cout<<endl;
cout<<"输入数据:"<<endl;
for(i=0;i<n;i++)
cin>>*(array+i);
move(array,n,m);
for(i=0;i<n;i++)
cout<<*(array+i)<<'\t';
delete []array;
return 0;
}
void move(int *p,int x,int y)
{
int temp;
for(i=0;i<y;i++)
{
temp=*(p+x-1);
for(j=0;j<x-1;j++)
*(p+x-1-j)=*(p+x-2-j);
*p=temp;
}
}