1447391641 发表于 2021-5-4 18:59:53

字符串替换

本帖最后由 1447391641 于 2021-5-5 22:40 编辑

#include<stdio.h>
int fun(char *s1,char *s2,char *str1,char *str2)
{
char *t0,*t1,*t2,*x,*y;
x=s1,y=s2;
while(/*空*/ )
{
for(t0=s1,t1=str1;(*t1!='\0'&&/*空*/);t0++,t1++)
if(/*空*/) *s2++=*s1++;
else
{
for(t1=str2;*t1!='\O';)
*s2++=/*空*/;
s1=t0;
}
}
/*空*/
}
int main(){
       
char s1[]="abedef ababcd abab.",s2;
fun(s1,s2,"abc","XYZ");
printf("%s\n",s2);
}


请问填空那几个怎么填呢,程序要求是:s1里面的abc替换成XYZ 并放到s2里面{:5_111:}

人中仙 发表于 2021-5-5 11:24:36

第9行的s2++=后面的空格是什么意思

1447391641 发表于 2021-5-5 22:40:33

人中仙 发表于 2021-5-5 11:24
第9行的s2++=后面的空格是什么意思

丢了s1++了尴尬

1447391641 发表于 2021-5-5 22:41:05

没有人会吗{:5_104:}

人造人 发表于 2021-5-6 14:24:42

1447391641 发表于 2021-5-5 22:41
没有人会吗

不是没人会,是没人愿意看这样的代码

#include<stdio.h>
int fun(char *s1,char *s2,char *str1,char *str2)
{
char *t0,*t1,*t2,*x,*y;
x=s1,y=s2;
while(/*空*/ )
{
for(t0=s1,t1=str1;(*t1!='\0'&&/*空*/);t0++,t1++)
if(/*空*/) *s2++=*s1++;
else
{
for(t1=str2;*t1!='\O';)
*s2++=/*空*/;
s1=t0;
}
}
/*空*/
}
int main(){
      
char s1[]="abedef ababcd abab.",s2;
fun(s1,s2,"abc","XYZ");
printf("%s\n",s2);
}

该缩进的缩进,该空格的空格
你把代码写成这样,没人愿意看,真的
页: [1]
查看完整版本: 字符串替换