结果是aa
#include <stdio.h>
void del (char *s,char c )
int i,j;
for (i=j=0; s[i]!='\0'; i++)
if (s[i]== c) s[j++]=s[i];
s[j]='\0';
}
int main()
{
char s[]="the c language";
del(s,“a”); puts(s);
return 0;
}
代码不太对啊,函数del第二个参数要求char类型,但实际传递了一个字符串"a",写错了吧,应该是字符'a'
del函数实现字符串s中过滤掉字符c,但写的有错误,应该是 if(s[i] != c) s[j++] = s[i];
方法就是把不是c的字符从数组的第0个字符开始向后逐个覆盖,并将最后一个字符设置为字符串结束符0