用c帮我写给定一个长度为n的字符串,求向左移k位的字符串
时间: 2023-06-02 13:03:09 浏览: 95
以下是使用C语言编写的实现代码:
```
#include <stdio.h>
#include <string.h>
void leftShift(char *str, int k);
int main()
{
char str[100];
int k;
printf("请输入一个字符串:");
scanf("%s", str);
printf("请输入向左移动的位数:");
scanf("%d", &k);
leftShift(str, k);
printf("左移后的字符串为:%s", str);
return 0;
}
void leftShift(char *str, int k)
{
int len = strlen(str);
k %= len; // 确保k小于字符串长度
// 将前k个字符移动到字符串末尾
for (int i = 0; i < k; i++) {
char temp = str[0];
for (int j = 1; j < len; j++) {
str[j - 1] = str[j];
}
str[len - 1] = temp;
}
}
```
使用示例:
```
请输入一个字符串:abcdefg
请输入向左移动的位数:3
左移后的字符串为:defgabc
```
解释:将字符串 "abcdefg" 向左移动 3 位,结果为 "defgabc"。
阅读全文
相关推荐
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)