C程序运行错误。帮帮忙~应该和指针有关
程序代码:
#include "stdio.h" void insert(char s1[],char s2[],int f) { char s[40],*t=s,i=0; while(i!=f) {*t=s1[i++];t++;} i=0; while(s2[i]!='\0') {*t=s2[i++];t++;} i=f; while(s1[i]!='\0') {*t=s1[i++];t++;} *(t+1)='\0'; printf("%s",s); } int main() { char s1[20],s2[20]; int f; printf("请输入两个数组s1和s2:\n"); gets(s1); gets(s2); printf("要在s1指定区域f处插入s2,请输入f:\n"); scanf("%d",f); insert(s1,s2,f); return 0; } 这个程序运行错误,能不能帮忙看看错在哪里,是不是指针运用的错误啊。。非常感谢