C语言作业:C059-数组循环移动

设数组A中存有n(n>0)个整数,在不允许使用另外数组的前提下,将A中的每个整数循环右移m(m>=0)个位置。即:将A中的数据由(A0A1……An-1)变换为(An-m…… An-1A0A1……An-m-1)。

要求:输入n ( 1<=n<=100)、m(m>=0)及n个整数,输出循环右移m位以后的整数序列。

输入:占二行,其中

第1行:n和m两个数,n和m之间用空格分隔。

第2行:数组A中的n个数,各数之间用空格分隔(第一个数之前和最后一个数之后无空格)。

输出:占一行,数据间用一个空格分隔(第一个数之前和最后一个数之后无空格)。

样例:

10 5

1 2 3 4 5 6 7 8 9 0

6 7 8 9 0 1 2 3 4 5

#define _CRT_SECURE_NO_WARNINGS
#include
int main()
{
	int num, tran;
	scanf("%d %d", &num, &tran);
	int a[100] = { 0 };
	for (int i = 0; i < num; i++)
	{
		scanf("%d", &a[(i + tran) % num]);
	}
	printf("%d", a[0]);
	for (int j = 1; j < num; j++)
	{
		printf(" %d", a[j]);
	}
	return 0;
}

你可能感兴趣的:(c语言,笔记)