试题说明 : =========================================== 给定程序MODI1.C中函数 fun 的功能是:将既在字符串s中出 现又在字符串t中出现的字符构成一个新的字符串放在u中,u中字 符按原字符串中字符顺序排列,不去掉重复字符。 例如:当s="ABBCDE",t="BDFG"时,u中的字符串为:"BBD"。 请改正函数fun中的错误,使它能得出正确的结果。注意:不 要改动main函数,不得增行或删行,也不得更改程序的结构! =========================================== 程序 : =========================================== #include #include #include
void fun (char *s, char *t, char *u) { int i, j, sl, tl; sl = slen(s); tl = slen(t); for (i=0; i { for (j=0; j if (s[i] == t[j]) break; /************found************/ if (j>=tl) *u = s[i]; } /************found************/ *u = '0'; }
main() { char s[100], t[100], u[100]; clrscr(); printf("\nPlease enter sing s:"); scanf("%s", s); printf("\nPlease enter sing t:"); scanf("%s", t); fun(s, t, u); printf("The result is: %s\n", u); } =========================================== 所需数据 : =========================================== #2 @1 001004 if(jif(!(j>=tl)) if(tl>j) if(!(tl<=j)) @2 001006 *u='\0'; *u=0; (*u)='\0'; (*u)=0; u[0]='\0'; u[0]=0;
|