游客 Signup | Login
中文 | En

3104 - 【创新型】第9章: 指针 9.19 平移交换

在学习完第10章的内容之后再来做此题。。。

----------------------------------------------------------------------------------------------------------------------------------------------------------

编写一个函数,函数的功能是移动字符串中的内容。移动的规则如下:把第1到第m个字符,平移到字符串的最后;再把第m+1到最后的字符移动到字符串的前部。例如,字符串中原由的内容为:ABCDEFGHIJK,m的值为3,则移动后,字符串中的内容应该是DEFGHIJKABC。在主函数中输入一个长度不大于20的字符串和平移的值m,调用函数完成字符串的平移。要求用指针方法处理字符串。

Input

一个字符串,一个数字

Output

也是一个字符串

Examples

Input

ABCDEFGHIJK
3

Output

DEFGHIJKABC

Solution C

#include <stdio.h>
#include <string.h>
void fun(char *pstr,int n);
int main()
{
	char str[20];
	int m;
	gets(str);
	scanf("%d",&m);
	fun(str,m);
	return 0;	
}
void fun(char *pstr,int n)
{
	int i,x,count=0;
	char b[20];
	x=strlen(pstr);
	for(i=n;i<x;i++)
	{
		b[count]=pstr[i];
		count++;
	}
	for(i=0;i<n;i++)
	{
		b[count]=pstr[i];
		count++;
	}
	b[count]='\0';
	printf("%s",b);
}
Time Limit 1 second
Memory Limit 128 MB
Discuss Stats
上一题 下一题