c语言如何删除一串字符串中指定的字符串

 我来答
纪令秋始职
2019-05-27 · TA获得超过3万个赞
知道大有可为答主
回答量:1.2万
采纳率:32%
帮助的人:817万
展开全部
#include
#include
void
del(char
*s,char
c)
{
int
i
=
0,j
=
0;
for(i=0;s[i]!='\0';)
{
if(s[i]==c)
{
for(j=i;s[j]!='\0';j++)
{
s[j]=s[j+1];
}
}
else
{
i++;
}
}
}
void
main(void)
{
char
s[80]={0};
char
c;
gets(s);
//从输入流读取一行,直至遇到换行符,windows回车键盘包含换行:\r\n
//getchar();
//从输入流读取一个字符,把这行注释掉
c=getchar();
//再读取一个字符
del(s,c);
//执行删除函数
puts(s);
//输出字符至输出流
system("pause");
/*按照你写的,你可以试试输入一个行字符串,回车一次,再回车一次,再输入删除字符*/
/*gets的作用是从输入流读取一行数据直到遇到换行符,所以你第一次回车是gets函数读取的*/
/*第二次回车,是getchar()读取的,再输入一个字符才是你读取的欲删除的字符*/
}
资依霜宜淼
2020-05-21 · TA获得超过3万个赞
知道大有可为答主
回答量:1.1万
采纳率:28%
帮助的人:637万
展开全部
#include
#include
intmain(){chars1[200],s2[200],temp[200],*p;printf("请输入一字串");scanf("%s",s1);printf("请输入要删除字串");scanf("%s",s2);p=strstr(s1,s2);if(p!=NULL){strncpy(temp,s1,p-s1);temp[p-s1]='\0';strcat(temp,p+strlen(s2));printf("删除后的字串为:%s\n",temp);}elseprintf("要删除字字串未找到!\n");return0;}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式