当前位置: 代码迷 >> C语言 >> 我写的一个替换功能的程序
  详细解决方案

我写的一个替换功能的程序

热度:497   发布时间:2007-07-24 20:36:23.0
我写的一个替换功能的程序
//从str中查到word,并用word_change替换这个单词
length = strlen(word);
len = strlen(word_change);
for(j=0;*(str+j)!='\0';j++)
{
m = j;
std = 1;
if(*(str+j) == *word)
{
for(i=1;i<=length-1;i++)
{
if(*(word+i)==*(str+(++j)))
std++;
else
break;
}
if(std==length)//查到后,开始替换
{
strcpy(str,str_new);
strcpy(word_change,str_new+m);
strcpy(str+m+length-1,str_new+m+len-1);
}
}
j = m;
}



我写的一个替换功能能的程序,感觉比较烂,尤其是替换那块儿,大家有什么好算法吗?
----------------解决方案--------------------------------------------------------
也来贴一个
{
char tmp_result[1024];
char * p,*q;
int len;
len=0;
memset(tmp_result,'\0',sizeof(tmp_result));
p=q=str;
len=strlen(word);
while(q!=NULL)
{
if((q=strstr(p,word))!=NULL)
{
strncat(tmp_result,p,q-p);
strcat(tmp_result,world_change);
strcat(tmp_result,"\0");
q+=len;
p=q;
}
else strcat(tmp_result,p);
}
strcpy(str,tmp_result);
}


----------------解决方案--------------------------------------------------------
提示: 作者被禁止或删除 内容自动屏蔽

坚持到底
2007-07-25 15:30:09
boot2046

等 级:新手上路
威 望:3
帖 子:168
专家分:0
注 册:2007-7-23
  得分:0 
那你来一个不麻烦的吧
----------------解决方案--------------------------------------------------------
LS的,网上很多,自己找
----------------解决方案--------------------------------------------------------
  相关解决方案