C语言:实现一个函数,可以左旋字符串中的k个字符。

左旋字符串k个字符(三步):

旋转前k个字符串,选择n- k个字符串,旋转整个字符串。


#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
#include <string.h>
#include<stdlib.h>


void Reverse(char* left, char* right)
{
    while (left < right)
    {
        char tmp = *left;
        *left = *right;
        *right = tmp;
        left++;
        right--;
    }
}


int main()
{
    char arr[] = "AABCD";
    int k = 0;
    scanf("%d", &k);
    int len = strlen(arr);

    Reverse(arr, arr + k - 1);
    Reverse(arr + k, arr + len - 1);
    Reverse(arr, arr + len - 1);

    printf("%s", arr);
    system("pause");
    return 0;
}


阅读更多
个人分类: C语言
上一篇C语言:每瓶汽水1元,两个空瓶可以置换一瓶汽水,现在有20元,最多能喝多少瓶汽水。
下一篇C语言:判断一个字符串是否为另外一个字符串旋转之后的字符串。(左旋右旋、求子串)
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭