本题要求编写函数,将输入字符串的前3个字符移到最后。
先跳过前三个元素开始输出,再输出前三个元素,并赋值到新数组中,最后把新数组的值一个一个赋给原数组。
方法有点投机取巧,不知道最正确的写法是什么,希望有大佬解答
void Shift(char s
[]) {
char a
[MAXS
];
int j
= 0;
for (int i
= 3; s
[i
] != '\0'; i
++) {
a
[j
] = s
[i
];
j
++;
}
for (int i
= 0; i
<3; i
++) {
a
[j
] = s
[i
];
j
++;
}
for (int i
= 0; a
[i
] != '\0'; i
++) {
s
[i
] = a
[i
];
}
}