- 描述
-
小c才开始学习c语言,让他最烦恼的就是对字符数组的操作。小C的好朋友小E为了激励他,出了这样一个题目:字符串的移动输出。并给他许诺说,如果他能够在有限的时间内编写出这道题目的代码,并顺利通过就请他去吃大餐,于是小C便认真的敲这个题目的代码去了,聪明的你也来练练手吧。
- 输入
- 第一行包括一个整数t,代表有t组数据;
每组数据第一行包括一个整数m(1<=m<=50),第二行有m个小写英文字符,第三行包括一个整数n(0<=n<=100),代表字符串向左移动n位。
- 输出
- 每组数据输入站一行,即输出移动后的字符串。
- 样例输入
-
3 5 asdfk 0 5 asdfk 1 5 asdfk 6
- 样例输出
-
asdfk sdfka sdfka
1 #include <stdio.h> 2 3 int main(){ 4 int T; 5 char s[100]; 6 char result[100]; 7 int length; 8 int k; 9 int i; 10 int temp; 11 12 scanf("%d",&T); 13 while(T--){ 14 scanf("%d%s%d",&length,&s,&k); 15 16 for(i=0;i<length;i++){ 17 if(i-k>=0){ 18 result[i-k]=s[i]; 19 } 20 else{ 21 if((k-i)%length==0) 22 temp=0; 23 24 else 25 temp=length-(k-i)%length; 26 result[temp]=s[i]; 27 } 28 } 29 result[length]='