# include & ltstring.h & gt
void delete1(字符s[],字符t[])
{
int i,j,k;
int flag = 0;
//I:代碼缺陷
//增加判斷力。應該
如果(!s ||!t)
{
返回;
}
if(strlen(s )& lt;strlen(t))
{
返回;
}
for(I = j = 0;s[i]!='\0';i++)
{
for(k = 0;t[k]!='\0';k++)
{
if(s[I+k]= = t[k])flag = 1;
其他
{
flag = 0;
打破;
}
}
//第二,邏輯錯誤
/*if(標誌)
{
s[j++]= s[I+k];
I = I+k+1;
} */
//更改為
if(標誌)
{
strcpy(& amp;s[i],& amps[I+k]);
}
//如果(!flag)s[j++]= s[I];
如果(!flag)繼續;
}
//s[j]= ' \ 0 ';
printf("%s\n ",s);
}
主()
{
char str1[255],str 2[255];
printf("請輸入文章:\ n ");
gets(str 1);
printf("請輸入要刪除的單詞:\ n ");
gets(str 2);
delete1(str1,str 2);
}