# include <stdio.h>
# include <string.h>
int main()
{
void replace(char str[], char key[], char swap[]);
//str中存放源串,key中存放被替换的字符串,不能为空串,swap中为替换的字符串,可以为空串
char str1[1000], key1[500], swap1[500];
gets(str1);
gets(key1);
gets(swap1);
replace(str1, key1, swap1);//调用替换函数
printf("%s\n", str1);
return 0;
}
void replace(char str[], char key[], char swap[])//定义替换函数
{
int l1, l2, l3, i, j, flag;
char tmp[1000];//临时存放字符串
//测量各字符串的长度
l1 = strlen(str);
l2 = strlen(key);
l3 = strlen(swap);
for(i = 0; i < l1 - l2; i++)//l1 - l2为源串与需删除(替换)的字串的长度差
{
flag = 1;
for(j = 0; j < l2; j++)//开始查找字符串
{
if (str[i + j] != key[j])
{
flag = 0;
break;
}
}
if (flag)//找到字符串
{
strcpy(tmp, str);//将源串赋值到临时数组tmp中
strcpy(&tmp[i], swap);//用swap中的字符串替换tmp中的i之后的部分
strcpy(&tmp[i + l3], &str[i + l2]);//将str除去key后的后半部分赋值给tmp
strcpy(str, tmp);//再将tmp赋值到str中
i += l3 - 1;
l1 = strlen(str);
}
}
}C语言——字符串替换
最新推荐文章于 2025-11-29 00:15:00 发布
本文介绍了一个使用C语言实现的字符串替换函数。该函数能够在一个源字符串中查找并替换指定的子串,即使子串为空也能正确处理。通过示例展示了如何调用此函数,并解释了其实现细节。
部署运行你感兴趣的模型镜像
您可能感兴趣的与本文相关的镜像
ACE-Step
音乐合成
ACE-Step
ACE-Step是由中国团队阶跃星辰(StepFun)与ACE Studio联手打造的开源音乐生成模型。 它拥有3.5B参数量,支持快速高质量生成、强可控性和易于拓展的特点。 最厉害的是,它可以生成多种语言的歌曲,包括但不限于中文、英文、日文等19种语言
2586

被折叠的 条评论
为什么被折叠?



