#include <stdio.h>
#include <string.h>
void DelChar(char *str,char ch){ //char *str str is a point,an addrass
int i,k; // same as str[],&str[0]
for(i=0;str[i]!=0;i++){
if(str[i]==ch){
for(k=i;str[k]!=0;k++){ //move the last entry and \0 as well,because while
str[k]=str[k+1]; //printf we need the \0 to end.
}
i--; //after moving a bunch of numbers,there's a new number at str[i]
}
}
}
void DelChar1(char *str,char ch){ //not delete,but collect what we want.
int i,j=0;
for(i=0;str[i]!=0;i++){
if(str[i]!=ch){
str[j++]=str[i];
}
}
str[j]=0;
}
int main(){
char a[50],ch;
gets(a); //strs don not need getchar \n ; gets() can grasp blankspace
//fgets(a) is not OK here,when <50 \n will be scanned!!!
ch=getchar();
DelChar(a,ch); //DelChar(&a[0],ch);
printf("%s",a);
return 0;
}
08-26
1173
02-06
513