C语言编写一个函数将字符中的一个指定字符用另一个指定字符来代替

如题所述

void
rep(char
*s,char
*s1,char
*s2)
{
char
*p;
for(;*s;s++)
/*顺序访问字符串s中的每个字符*/
{
for(p=s1;*p&&*p!=*s;p++);/*检查当前字符是否在字符串s1中出现*/
if(*p)
*s=*(p-s1+s2);
/*当前字符在字符串s1中出现,用字符串s2中的对应字符代替s中的字符*/
}
}
不知道对于不对,你自己去试下,对了请采纳,不对请往下浏览
温馨提示:答案为网友推荐,仅供参考
第1个回答  2009-12-12
/*************************字符串替换函数sreplace***************************/
//将content串中所有的p串用r串代替
//return:是否发生替换
bool sreplace(char* content,char* p,char* r){
string t(content);
int slen=strlen(p);
int rlen=strlen(r);
int i=0;
while(1){
i=t.find(p);
if(-1==i)
break;
t.replace(i,slen,r,rlen);
}
cout<<t<<endl;
delete []content;
content = new char[t.length()+1];
if(content == NULL)
return false;
strcpy(content,t.c_str());
return true;
}本回答被提问者采纳
第2个回答  2009-12-12
#include<stdio.h>
#define N 500
void replace(char*p, char old,char now)
{
int i;
for(i=0;i<N;i++)
{
if(*p==old)*p=now;
p++;
}
return;
}
int main()
{
char ch[N],old,now;
gets(ch);
scanf("%c %c",&old,&now);
replace(ch,old,now);
puts(ch);
return 0;
}
第3个回答  2009-12-12
void replace(char* str, char re,char er)
{
assert(str!=null);
char *p=str;
while(*p!='\0')
{
if(*p==re)*p=er;
p++;
}
return;
}
第4个回答  2009-12-12
void replace(char *str,const char a,const char b)
{
if (*str) {
*str=*str==a?b:*str;
replace(str+1,a,b);
}
}

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网