C语言函数调用删除字符串中某个字符
Description:
编制函数del_char
函数原型为 void del_char(char *,char),函数的功能是删除a指向的字符串中值为ch的字符。
Sample Input
A
AscADef
Sample Output
scDef
/*函数调用删除字符*/
#include<stdio.h>
#include<string.h>
void del_char(char *s,char c)
{
int count=0;
int i;
for( i=0;s[i]!='\0';i++){ /*空字符停止循环:一般适用
于不清楚字符串大小*/
s[i-count]=s[i]; // 字符串中需要删除的字符覆盖掉
if(s[i]==c)
count++; //计数
}
s[i-count]='\0'; //添加结束标志空字符,防止越界
}
int main(void)
{
char str[50]={'\0'};
char ch;
scanf("%c",&ch); //读取用户输入需要删除的字符(换行符也打入了输入流缓冲区)
getchar(); //提取输入流缓冲区的换行符
gets(str);
del_char(str,ch); //传递实际参数
puts(str);
return 0;
}