您的位置:首页 > 编程语言

编程:实现对字符串进行循环右移,例如:输入abcdefgh,循环右移34位,输出ghabcdef

2016-12-26 19:54 459 查看
例如:输入abcdefgh,循环右移34位,输出ghabcdef

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

#define MAX_SIZE 1024

char *move(char *input,int n)
{
if(input == NULL)
{
return NULL;
}

int i;
int len = strlen(input);

char *p = input;
static char str[MAX_SIZE];

p = p + len - (n % len);

for(i = 0; i < (n % len); i++)
{
str[i] = *p;
p++;
}
strcat(str,input);

str[len] = '\0';

return str;
}

int main()
{
char input[MAX_SIZE];
char *result;
int n;

printf("请输入任意字符串:");
scanf("%s",input);

getchar();

printf("请输入循环右移位数:");
scanf("%d",&n);

result = move(input,n);

printf("最终字符串:%s\n",result);

return 0;
}


内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  编程 c语言 面试题
相关文章推荐