下列给定程序中,函数fun()的功能是:将字符串p中所有字符复制到字符串b中,要求每复制3个字符之后插入一个空格。例如,在调用fun()函数之前给字符串a输入ABCDEFGHIJK,调用函数之后,字符串b中的内容则为ABC DEF GHI JK。 请改正程序中的错误,使它能得出正确的结果。 注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。 试题程序: #include <stdio. h> void fun (char *p, char *b) { int i, k=0; while (*p) /*************found***************/{ i=l; /*************found***************/ while (i<3|| *P) { b[k]=*p; k++; p++; i++; } if (*p) /*************found***************/ { b[k]= ’ ’;}} b[k]= ’\0’; } main ( ) { char a[80],b[80]; printf ("Enter a string: "); gets (a); printf ("The original string: "); puts (a); fun (a,b); printf("\nThe string after insert space: "); puts(b); printf("\n\n "); }