7-18 字符串循环左移 (20分)

输入一个字符串和一个非负整数N,要求将字符串循环左移N次。

输入格式:
输入在第1行中给出一个不超过100个字符长度的、以回车结束的非空字符串;第2行给出非负整数N。

输出格式:
在一行中输出循环左移N次后的字符串。

输入样例:

Hello World!
2

输出样例:

llo World!He

参考代码

#include <stdio.h>
#include <string.h>

int main()
{
	char str[101] = { 0 };
	int m, i, j;

	gets(str);
	scanf("%d", &m);
	int n = strlen(str);

	if (m < n)
	{
		j = m;
	}
	else
		j = m % n;

	for (i = 0; i < n; ++i)
	{
		printf("%c", str[j]);
		j = (j + 1) % n;
	}
	printf("\n");

	return 0;
}