麻烦指教一下,为什么运行到最后错误,不出结果?怎样改正?
#include"stdio.h"#include"string.h"
char *insert(char *s1,char *s2,int n)
{
int i,j,k;
i=0;
j=0;
k=0;
for(i=0;i<n;i++)
{
s1[j]=s1[i];
j++;
}
while(s2[k]!='\0')
{
s1[j]=s2[k];
j++;
k++;
}
while(s1[n]!='\0')
{
s1[j]=s1[n];
j++;
n++;
}
s1[j]='\0';
return s1;
}
int main()
{
char str1[100]={0},str2[20]={0};
char *str;
int n;
puts("字符串1:");
gets(str1);
puts("插入位置:");
scanf("%d",&n);
getchar();
puts("字符串2");
gets(str2);
str=insert(str1,str2,n);
printf("%s",str);
getchar();
return 0;
}