7-52 数组元素循环右移问题 (20分)

7-52 数组元素循环右移问题 (20分)

#include <cstdio>

int main(){
    int n,m;
    scanf("%d%d",&n,&m);
    int a[n];
    for(int i=0;i<n;i++)
    {
    	scanf("%d",&a[i]);
    }
    if(n<m)//若N<M时,每次往右移N位即恢复原状
	{
		m=m%n; 
	} 
	for(int i=n-m;i<n;i++)//改变输出顺序 
	{
		printf("%d ",a[i]);
	}
	for(int i=0;i<n-m-1;i++)
	{
		printf("%d ",a[i]);
	}
	printf("%d",a[n-m-1]);
    return 0;
}

可以参照乙级B1008

发布了64 篇原创文章 · 获赞 0 · 访问量 782

猜你喜欢

转载自blog.csdn.net/qq_38054511/article/details/104098387