有关getchar()用法和scanf()输入还不是很懂,求大佬指教
要求:从键盘输入一个字符串,再任意输入一个指定字符,删除字符串中的指定字符。有问题的代码
#include<stdio.h>
#include<string.h>
int main()
{
char str[30],new_str[30],c;
int i,j;
gets(str);
getchar();
scanf("%c",&c);
for(i=0,j=0;str[i]!='\0';i++)
{
if(str[i]!=c)
new_str[j++]=str[i];
}
new_str[j]='\0';
puts(new_str);
printf("%s\n",new_str);
return 0;
}但是输出结果没有删除字符的功能;之后,把 getchar();
scanf("%c",&c);换成 c=getchar();结果正确。所以有大佬解释一下吗?