中易网

c语言求助:将字符串s中的子字符串s1全部替换为子字符串s2.用指针实现

答案:1  悬赏:20  
解决时间 2021-03-13 05:27
c语言求助:将字符串s中的子字符串s1全部替换为子字符串s2.用指针实现
最佳答案
#include
#include

#define MAXLENGTH 100

void replace(char *s, char *s1, char *s2)
{
int len1 = strlen(s), len2=strlen(s1), len3 = strlen(s2);
char buf[MAXLENGTH]; //保存替换后的字符串
int i, j, k, l;
for(i=0, k=0; i
for(j=0; j if(*(s+i+j) != *(s1+j)) break;
}
if(j == len2) {
l = 0;
while(l i += len2;
continue;
} else {
*(buf+k++) = *(s+i++);
}
}
while(i *(buf+k) = '\0';
strcpy(s, buf);//将替换后的串复制给s.
}

int main()
{
char str[MAXLENGTH] = {NULL};
char str1[MAXLENGTH] = {NULL};
char str2[MAXLENGTH] = {NULL};

printf("请输入字符串s: \n");
gets(str);
fflush(stdin);
printf("请输入字符串s1: \n");
gets(str1);
fflush(stdin);
printf("请输入字符串s2: \n");
gets(str2);
replace(str, str1, str2);

printf("替换后的字符串: %s\n", str);

return 0;
}
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
EXCEL 2010 隐藏和取消隐藏
有没有人去上过乐博乐博机器人学校的体验课,
原国家公务员刑释后能否再回原单位上班
富士SL305相机 拍出来的照片怎么内存都这么大
木瓜葛根粉泡出来是什么颜色 我泡出来的为什
2011河南专升本安阳工学院艺术设计系 总分考
手机壁纸怎么变成一半,要滑屏才能看完整
6米8平板货车哪里好配货
苹果平板什么时间能支持通话功能?
分宜大厦这个地址在什么地方,我要处理点事
WOW盗贼打法师该怎么操作
我显卡的卡扣和主板到卡扣都断了,只有一边打
交通银行如何加办银联在线支付
沙子在哪里可以弄到
月入4000,现在想办信用卡,不知道办哪家银行
推荐资讯
农行企业网银怎么向个人账户汇款,我是支付给
宝马X5是一台好车吗
QQ怎么设置好友验证?我的不是好友就能说话
新版口袋妖怪火红如何得到新地图
发快递从新疆到广州普通快递多少钱
旧毛衣怎样洗能又新又亮
球球大作战的号被改绑定了,怎么拿回来?急~
现在从美国的亚马逊上购买xbox one,能不能到
201,或402不锈钢网片能在大海里浸泡半年而不
梅州市佳安消防科技有限公司怎么去啊,有知道
广西华宇建工公司我想知道这个在什么地方
五道班在哪里啊,我有事要去这个地方
手机登qq时,显示手机磁盘不足,清理后重新登
刺客的套装怎么选啊?