1863 - 字符串右移
小C最近迷上了字符串,于是他有一个问题想考你,聪明的你一定知道答案。问题如下:给你一个字符串,让你对其进行向右移动K次,输出新的字符串。
题目输入
输入数据有多组,每组有一个字符串STR与一个数字K,表示对字符串STR向右移动K位。
题目输出
输出新的字符串STR1.
输入/输出样例
题目输入
abcd1234 4 sdfe123f 10
题目输出
1234abcd 3fsdfe12
C语言解答
#include <stdlib.h> #include <stdio.h> #include <string.h> int main(){ int i,k,len; char s[1000]; while(scanf("%s %d",s, &k) != EOF){ len = strlen(s); i = len - k%len; printf("%s", &s[i]); s[i] = 0; printf("%s\n",s); } return 0; }
C++解答
#include<iostream> #include<stdio.h> using namespace std; int main() { string s1,s2; int n; while(cin>>s1>>n){ int sum=n%s1.length(); for(int i=s1.length()-sum;i<s1.length();i++) { printf("%c",s1[i]); } for(int i=0;i<=s1.length()-sum-1;i++) { printf("%c",s1[i]); } printf("\n"); } }