要求:
键盘输入母串s1与子串s2,删除s1中所有的子串s2。
#include
#include
void re(char str1[],char str2[])
{
int i,j,flag,n=0;
for(i=0;str1[i]!=0;i++)
{
flag=0;
for(j=0;str2[j]!=0;j++)
if(str1[i]==str2[j])
{
flag=1;
break;
}
if(!flag)
str1[n++]=str1[i];
}
str1[n]=0;
}
int main()
{
char str1[40],str2[40];
scanf("%s%s",str1,str2);
re(str1,str2);
puts(str1);
return 0;
}
我输入abc ,要求删除ab,结果是c 这个运行正常
但我要是输入aba 要求删除ab,按理说结果是就剩下一个a
但实际运行结果 是都删除了,求解
求助C语言问题,我这个编程如何改????
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
2条回答 默认 最新
悬赏问题
- ¥15 这个主板怎么能扩出一两个sata口
- ¥15 不是,这到底错哪儿了😭
- ¥15 2020长安杯与连接网探
- ¥15 关于#matlab#的问题:在模糊控制器中选出线路信息,在simulink中根据线路信息生成速度时间目标曲线(初速度为20m/s,15秒后减为0的速度时间图像)我想问线路信息是什么
- ¥15 banner广告展示设置多少时间不怎么会消耗用户价值
- ¥16 mybatis的代理对象无法通过@Autowired装填
- ¥15 可见光定位matlab仿真
- ¥15 arduino 四自由度机械臂
- ¥15 wordpress 产品图片 GIF 没法显示
- ¥15 求三国群英传pl国战时间的修改方法