c语言删除字符 从键盘输入任意一个字符串和一个字符,要求从该字符串中删除所有该字符。

Input

输入有多组测试数据。每组两行,第一行是字符串(字符串至少还有一个字符,不多于100个),第二行是一个字符

Output

每组输出一行,删除了所有应删除字符后的字符串

Sample Input
ABCDEEASD Dfg fhdD
Sample Output
ABCDAS fg fhd

我的答案:

第1个回答  推荐于2017-05-20
#include <stdio.h>
int main()
{
char str[100], a, *p, *q, *m, n;
while(gets(str)!=0)
{
scanf("%c", &a);
getchar();
p = str;
while(*p)
p++;
n = p - str;
p = str;
while(*p!=a)
p++;
m = p;
while(p<str+n)
{
q = p+1;
while(*q==a && q<str+n)
q++;
p = q;
q = p+1;
while(*q!=a && q<str+n)
q++;
while(p<q)
{
*m = *p;
m++;
p++;
}
p = q;
}
*m = '\0';
printf("%s\n", str);
}
return 0;
}追问

编译是对的 可是为什么还是RUNTIME?

本回答被网友采纳
相似回答