C语言如何删除指定字符,其他字符输出

麻烦看一下代码错在哪里

第1个回答  2019-09-17
if(string[i]=c)应该写成if(string[i]==c)#include<stdio.h>
#include<string.h>
void string_cut(char string[],char c)
{
char temp[20];int i,j;
for(i=0,j=0;i<strlen(string);i++)
{
if(string[i]==c)
continue;
else
{temp[j]=string[i];j++;}
}
temp[j]='\0';
strcpy(string,temp);
}
void main()
{
char string[20],a;
printf("请输入待操作的字符串:\n");
scanf("%s",string);
getchar();
printf("请输入要删除的字符:\n");
scanf("%c",&a);
string_cut(string,a);
if(strlen(string)==0)
puts("没有要删除的字符\n");
else {puts("删除后字符串为:\n"); puts(string);}
fflush(stdin);
getchar();
}本回答被提问者和网友采纳
第2个回答  2019-09-17
不见代码,如果思路正确,即输入一个指定的字符,查找此字符是否在字符串里,为了简便,直接用字符和其比较,相等不输出,否则输出。
第3个回答  2019-09-16

scanf("%c", &ch);


第4个回答  2019-09-17
char ch;改成char ch,s[20];
scanf("%d",&ch);改成scanf("%s",s); ch=s[0];
第5个回答  2019-09-17
首先主函数里,scanf("%c",&ch);
fun函数里最后面最应该为s[i]='\0';
相似回答