c语言的填空题,求帮忙啊以下程序的功能是将原old字符串中所有出现的sub子串处替换为rpl子串,其余不变,并将最终结果存入news中,请将程序补充完整.#includevoid main(){ char old[80],sub[80],rpl[80],*news
来源:学生作业帮助网 编辑:作业帮 时间:2024/07/11 12:34:31
![c语言的填空题,求帮忙啊以下程序的功能是将原old字符串中所有出现的sub子串处替换为rpl子串,其余不变,并将最终结果存入news中,请将程序补充完整.#includevoid main(){ char old[80],sub[80],rpl[80],*news](/uploads/image/z/14354498-2-8.jpg?t=c%E8%AF%AD%E8%A8%80%E7%9A%84%E5%A1%AB%E7%A9%BA%E9%A2%98%2C%E6%B1%82%E5%B8%AE%E5%BF%99%E5%95%8A%E4%BB%A5%E4%B8%8B%E7%A8%8B%E5%BA%8F%E7%9A%84%E5%8A%9F%E8%83%BD%E6%98%AF%E5%B0%86%E5%8E%9Fold%E5%AD%97%E7%AC%A6%E4%B8%B2%E4%B8%AD%E6%89%80%E6%9C%89%E5%87%BA%E7%8E%B0%E7%9A%84sub%E5%AD%90%E4%B8%B2%E5%A4%84%E6%9B%BF%E6%8D%A2%E4%B8%BArpl%E5%AD%90%E4%B8%B2%2C%E5%85%B6%E4%BD%99%E4%B8%8D%E5%8F%98%2C%E5%B9%B6%E5%B0%86%E6%9C%80%E7%BB%88%E7%BB%93%E6%9E%9C%E5%AD%98%E5%85%A5news%E4%B8%AD%2C%E8%AF%B7%E5%B0%86%E7%A8%8B%E5%BA%8F%E8%A1%A5%E5%85%85%E5%AE%8C%E6%95%B4.%23includevoid+main%28%29%7B+++char+old%5B80%5D%2Csub%5B80%5D%2Crpl%5B80%5D%2C%2Anews)
c语言的填空题,求帮忙啊以下程序的功能是将原old字符串中所有出现的sub子串处替换为rpl子串,其余不变,并将最终结果存入news中,请将程序补充完整.#includevoid main(){ char old[80],sub[80],rpl[80],*news
c语言的填空题,求帮忙啊
以下程序的功能是将原old字符串中所有出现的sub子串处替换为rpl子串,其余不变,并将最终结果存入news中,请将程序补充完整.
#include
void main()
{ char old[80],sub[80],rpl[80],*news,*s1,*s2;
gets(old);
gets(sub);
gets(rpl);
while( ? )
{ for(s1=old,s2=sub;*s1!='\0'&& ? ;s1++,s2++)
if(*s2!='\0')
*news++= ? ;
else
{ for(s2=rpl;*s2!='\0';s2++)
*news++= ? ;
? ;
}
}
*news='\0';
}
请问5处打问号的地方该填什么?
c语言的填空题,求帮忙啊以下程序的功能是将原old字符串中所有出现的sub子串处替换为rpl子串,其余不变,并将最终结果存入news中,请将程序补充完整.#includevoid main(){ char old[80],sub[80],rpl[80],*news
#include<stdio.h>
#include<string.h>
void replace(char *old,char *sub,char *rpl,char* &news)
{
char *s1=NULL,*s2=NULL,*p_bak=news;
while(*old!='\0')
{
for(s1=old,s2=sub;*s1!='\0'&&*s2!='\0'&&*s1==*s2;s1++,s2++)
continue;
if(*s2!='\0')
*news++=*old++;
else
{
for(s2=rpl;*s2!='\0';s2++)
*news++=*s2;
old=old+strlen(sub);
}
}
*news='\0';
news=p_bak;
}
void main(){
char old[80]="abcuvwabuv uvuvwx uvxw",sub[80]="uvw",rpl[80]="abcd";
int len = strlen(old)/strlen(sub)*strlen(rpl)+strlen(old)%strlen(sub)+1;
char *p = new char[len];
memset(p,0x00,len);
replace(old,sub,rpl,p);
printf("%s\n",p);
}