我这有两种方法:
第一种:
#include <stdio.h>
#include <string.h>
int main()
{
int i,n;
char s[100],c;
scanf("%s %c",&s,&c);
int len=strlen(s);
for(i=0;i<len;i++)
if(s[i]==c)
{
for(n=i;n<len;n++)
{
s[n]=s[n+1];
}
i--; //此处应特别注意,如果去掉的话会隔一个删一个
len--;
s[n]='\0';
}
printf("%s\n",s);
return 0;
}
第二种:
#include<stdio.h>#include<string.h>
int main()
{
void delchar(char *p,char *q);
char s[100],c;
gets(s);
scanf("%c",&c);
delchar(s,&c);
puts(s);
return 0;
}
void delchar(char *p,char *q)
{
int i,j,k,t;
int len;
len=strlen(p);
do
{
t=0;
for(i=0;i<len;i++)
if(p[i]==*q)
{t=1;len--; break;}
if(t==1)
for(j=i;j<len;j++)
p[j]=p[j+1];
p[j]='\0';
}while(t!=0);
}