实现一个函数,可以左旋字符串中的k个字符ABCD左旋一个字符得到BCDA ABCD左旋两个字符得到CDAB。


 void reverse(char *left, char  *right)
 {
	 assert(left != NULL);
	 assert(right != NULL);
	while (left<right)
	{

		
		int tmp=*left;
		*left = *right;
		*right = tmp;
		
			left++;
		    right--;
	}
}
void left_move(char *str, int  k)
{

	
	int len = strlen(str);
	reverse(str,str+k-1 );
	reverse(str+k,str+len-1 );
	reverse(str,str+len-1 );
}
int  main()
{
	char arr[] = "abcdefg";
	int k = 0;
	scanf_s("%d", &k);
	left_move(arr, k);
	printf("%s\n", arr);

	system("pause");
	return 0;

}

猜你喜欢

转载自blog.csdn.net/weixin_41892460/article/details/82820752