这几句改成
for(i=length;i>=index-1; i--)
poem[i+len] = poem[i];
for(i = 0; i < len; i ++)
poem[i_len]=delim[i];
#include
#include
void main()
{ char str1[30],str2[10];
int n;
char t[30];
int length1,length2,length3;
int i,j=0;
printf("Input the orignal string:");
scanf("%s",str1);
printf("Input the string you want to insert:");
scanf("%s",str2);
length1=strlen(str1);
length2=strlen(str2);
printf("Input the position:");
scanf("%d",&n);
for(i=n;i
length3=j;
j=n;
for(i=0;i
for(i=0;i
str1[j]='\0';
printf("%s",str1);
}
你后面的思路 我不是很懂
就是从插入节点入手, poem插入节点后的数据后移, 留出len 的长度, 给delim插入
#include
#include
#include
int main()
{
char poem[20];
char delim[4];
int length,i,j,index,len;
printf("input:\n");
scanf("%d%s%s",&index,&delim,&poem);
length=strlen(poem);
len=strlen(delim);
putchar('\n');
//poem 从插入节点及以后 向后移动len个长度
for (i=length-1;i>=index-1;i--)
{
poem[i+len]=poem[i];
}
//delim 从插入节点开始一次赋值如poem
for(i=index-1,j=0;j{
poem[i]=delim[j];
}
//输出插入后的poem
for (i=0;iprintf("%c",poem[i]);
}