请编写函数 fun,函数的功能是:移动字符串中的内容,移动的规则如下:把第1到第m个字符,平移到字符串的最后,把第m+1到最后的字符移到字符串的前部。例如,字符串中原有的内容为: ABCDEFGHIJK,m的值为3,则移动后,字符串中的内容应该是:DEFGHIJKABC。
#include<stdio.h>
fun(char *a,char *b,int m){
int i=0,j=0,len;
char c[20]={0};
for(i=0;a[i]!='\0';i++){
len=i+1;
}
if(m>len){
printf("位置错误\n");
return 0;
}
for(j=0;j<m;j++){
c[j]=a[j];
}
for(j=m;j<len;j++){
b[j-m]=a[j];
if(j>=len-m){
b[j]=c[j-len+m];
}
}
}
main(){
int m,i,len,e;
// char a[11]={'A','B','C','D','E','F','G','H','I','J','K'};
char a[20];
char b[20]={0};
printf("请输入字符串\n");
scanf("%s",a);
for(i=0;a[i]!='\0';i++){
len=i+1;
}
printf("字符串长度为%d\n",len);
printf("请输入移动位置(小于字符串长度)\n");
scanf("%d",&m);
fun(a,b,m);
printf("移动后字符串为:\n");
for(i=0;b[i]!='\0';i++){
printf("%c",b[i]);
printf(" ");
}
}