试题说明 : =========================================== 给定程序MODI1.C中函数 fun 的功能是:将在字符串s中出现、 而未在字符串t中出现的字符形成一个新的字符串放在u中,u中字 符按原字符串中字符顺序排列,不去掉重复字符。 例如:当s = "AABCDE",t = "BDFG"时, u中的字符串为"AACE"。 请改正函数fun中的错误,使它能得出正确的结果。注意:不 要改动main函数,不得增行或删行,也不得更改程序的结构!
=========================================== 程序 : =========================================== #include #include #include
/************found************/ 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]; } *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 001010 void fun (char *s,char *t, char *u) void fun (char *s,char *t, char u[]) void fun (char *s,char *t, char u[100]) fun (char *s,char *t, char *u) fun (char *s,char *t, char u[]) fun (char *s,char *t, char u[100]) fun (char s[],char t[], char u[]) fun (char s[100],char t[100], char u[100]) void fun (char s[],char t[], char u[]) void fun (char s[100],char t[100], char u[100]) @2 001006 if(j>=tl) if(tl<=j) if(!(jif(!(tl>j)) if(j==tl) if(tl==j)
|