c语言 如何将一个字符串的前n个字母后移至尾,其他的按顺序前移?
1个回答
展开全部
#include <stdio.h>
#include <string.h>//为了使用memcpy、strlen等字符串函数
#define N 5
int main()
{
char a[] = "abcdefghijk";
int i, j, m;
char b[N+1] = {'\0'};//b将成为一个中间储存数组
memcpy(b, a, N);//把a的前N个字符复制到b中,存起来,以供后面使用
m = strlen(a)+1;//得出a数组的长度
for(i=0,j=N; j<m; i++,j++)
{
a[i] = a[j];//前N个字符之后的字符“按顺序前移”
}
strcat(a, b);//把b追加到a后面,达成“前n个字母后移至尾”
printf(a);
return 0;
}
#include <string.h>//为了使用memcpy、strlen等字符串函数
#define N 5
int main()
{
char a[] = "abcdefghijk";
int i, j, m;
char b[N+1] = {'\0'};//b将成为一个中间储存数组
memcpy(b, a, N);//把a的前N个字符复制到b中,存起来,以供后面使用
m = strlen(a)+1;//得出a数组的长度
for(i=0,j=N; j<m; i++,j++)
{
a[i] = a[j];//前N个字符之后的字符“按顺序前移”
}
strcat(a, b);//把b追加到a后面,达成“前n个字母后移至尾”
printf(a);
return 0;
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询