前言
这个10分的题目我竟然犹豫得比20分的题目还久。。。还是要多加练习。
正文
题目:本题要求编写函数,将输入字符串的前3个字符移到最后。
输入样式:abcdef
输出样式:defabc
#include <stdio.h>
#include <string.h>
#define MAXS 10
void Shift( char s[] );
void GetString( char s[] ); /* 实现细节在此不表 */
int main()
{
char s[]="abcde";
Shift(s);
printf("%s\n", s);
return 0;
}
void Shift( char s[] ){
int i,k;
char a[3];
for(i=0;i<3;i++){
a[i]=s[i];
}
for(i=0;s[3+i]!='\0';i++){
s[i]=s[3+i];//将数列3个后的值往前移
}
for(i,k=0;k<3;k++){//这里思路没接上,没想到可以直接沿用上面的i的值
s[i++]=a[k];
}
}