c语言替换字符串中的指定字符(c语言中怎么替换字符串中的字符)
导语:C语言入门:替换字符串中的空格的实现
题目要求:用C语言实现将字符串中的空格替换成“789”。
或许你会觉得,很简单嘛,判断字符串中的每一个字符,如果不是空格不做改变,如果是空格就替换成“789”。哈哈,要是你这么想就上当了!
仔细看题目,是将原来的一个空格替换成“789”三个字符,这里要考虑字符串长度的改变,否则直接替换会把字符串中的正常字符覆盖掉!
比如字符串“a bc”,如果直接把空格替换为“789”,那就会变成“a789”,而不是我们想要的“a789bc”。
我们先分析一下题目,再一步步来解决需求。首先要判断字符串的字符是不是空格,这个很简单,用for或while循环语句依次查看字符串的每个字符即可;然后要将空格替换成“789”,在这里一个空格变成三个字符,所以字符串长度会改变,并且是有一个空格,字符串的长度就要比原来增加2。
所以我们可以这么做:
①先统计出字符串有多少空格,从而得出新字符串的长度
②判断字符串中的每一个字符,如果是空格,就替换为“789”
替换函数如下:
代码相对以往有一点点长,大家结合注释好好看看,代码里我做了详细的解释。一定要理解这种思维
然后通过main函数调用:
以上都是在visualstudio中编写的,最后运行一下:
可以看到,字符串“hello world”被替换为“hello789world”,实现了我们的需求。
这次的代码稍微长了一点,可能有一点不太好理解,核心思想就是先得到空格数,从而确定字符串新长度,然后从后往前判断是否为空格,如果是就替换。
如果还有疑问,可以在评论区提出。
免责声明:本站部份内容由优秀作者和原创用户编辑投稿,本站仅提供存储服务,不拥有所有权,不承担法律责任。若涉嫌侵权/违法的,请与我联系,一经查实立刻删除内容。本文内容由快快网络小悦创作整理编辑!