左旋字符串中的k个字符。
例如:
ABCD左旋一个字符得到BCDA
ABCD左旋两个字符得到CDAB
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
void Leftmove(char* str, int k){
int len=strlen(str);
for (int i = 0; i < k; i++){//控制旋转的次数
/*int tmp = str[0];//存储首元素
for (int j = 0; j < len; j++){
str[j] = str[j + 1];//将元素整体左移
}
str[len - 1] = tmp;//将首元素存放到最后一个元素的位置*/
int tmp = *str;//存储首元素
for (int j = 0; j < len; j++){
*(str+j) = *(str+j + 1);//将元素整体左移
}
*(str+len - 1) = tmp;//将首元素存放到最后一个元素的位置
}
}
int main()
{
char str[] = "ABCDEF";
int k = 0;
scanf("%d", &k);
Leftmove(str,k);
printf("%s",str);
system("pause");
return 0;
}
结果如下: