| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 519 人关注过本帖
标题:一个字符串函数
只看楼主 加入收藏
black0fish
Rank: 1
等 级:新手上路
帖 子:51
专家分:0
注 册:2006-9-5
收藏
 问题点数:0 回复次数:4 
一个字符串函数

写一个用字符串2替换字符串1中的某个字符的函数!!!

//char *substitution(字符ch,字符串1,字符串2);

char *substitution(char ch,char *str1,char *str2)
{
int n;
for(n=0;n<strlen(str2);n++)
{
*(strrchr(str1,ch)+n)=*(str2+n)
}
return str1;
}

main()
{
int n;
char str1[31];
strcpy(str1,"ABC");
strcpy(str1,substitution('A',str1,"ab"));
for(n=0;n<strlen(str1);n++)
{
printf("%c",*(str1+n));
}
}

这么程序错哪?怎么不能运行呢???



搜索更多相关主题的帖子: 替换字符串 return color 
2006-10-25 19:38
black0fish
Rank: 1
等 级:新手上路
帖 子:51
专家分:0
注 册:2006-9-5
收藏
得分:0 
啊哦,不对,搞错了,覆盖了!!!
2006-10-25 19:39
black0fish
Rank: 1
等 级:新手上路
帖 子:51
专家分:0
注 册:2006-9-5
收藏
得分:0 
char *substitution(char ch,char *str1,char *str2)
{
int n;
for(n=strlen(str1)-1;n>(strrchr(str1,ch)-str1);n--)
{
*(str1+n)=*(str1+n+1);
}
for(n=0;n<strlen(str2);n++)
{
*(strrchr(str1,ch)+n)=*(str2+n);
}
return str1;
}


还是不行!!!!

2006-10-25 19:50
Knocker
Rank: 8Rank: 8
等 级:贵宾
威 望:47
帖 子:10454
专家分:603
注 册:2004-6-1
收藏
得分:0 
变态的做法

char*substitution(char ch,char*str1,char*str2)
{
char*ptr1=str1,*ptr2=str2 ,*tem;
int str1_n=0,str2_n=0,tem_n,tem_t=0 ;

while(*ptr1)
{
if(*ptr1==ch)tem_t++;
str1_n++;
ptr1++;
}
tem_n=str1_n ;

while(*ptr2)
{
str2_n++;
ptr2++;
}
tem=ptr1+(str2_n-1)*tem_t;
while(tem_n>=0)
{
*tem=*(str1+tem_n);
tem--;
tem_n--;
}
ptr1=str1 ;

tem++;
while(*tem)
{
if(*tem==ch)
{
ptr2=str2 ;
while(*ptr2)
{
*ptr1++=*ptr2++;
}
tem++;
}
else
*ptr1++=*tem++;
}

return str1 ;
}

九洲方除百尺冰,映秀又遭蛮牛耕。汽笛嘶鸣国旗半,哀伤尽处是重生。     -老K
治国就是治吏。礼义廉耻,国之四维。四维不张,国之不国。   -毛泽东
2006-10-25 20:56
black0fish
Rank: 1
等 级:新手上路
帖 子:51
专家分:0
注 册:2006-9-5
收藏
得分:0 

明天起来看!!!

2006-10-26 00:03
快速回复:一个字符串函数
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.013004 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved