如何替换字符串中的空格
发表于:2025-11-09 作者:千家信息网编辑
千家信息网最后更新 2025年11月09日,今天就跟大家聊聊有关如何替换字符串中的空格,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。题目描述:实现一个函数,把字符串中的每个空格替换成 "
千家信息网最后更新 2025年11月09日如何替换字符串中的空格
今天就跟大家聊聊有关如何替换字符串中的空格,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。
题目描述:实现一个函数,把字符串中的每个空格替换成 "%20"
例如: 输入"We are happy." 输出"We%20are%20happy."
分析:每次遇到空格后,把空格后所有的字符都向后移动两个位置,于是会多出三个位置,此时将该三个位置替换成字符串"%20",如下图:

很显然,这种方法的时间复杂度为 O(n^2),因此不适合采用!
方法二:

根据这种思路,代码应该很好写了:
/*length 为字符数组string的总容量*/void ReplaceBlank(char string[], int length){ if(string == NULL && length <= 0) return; /*originalLength 为字符串string的实际长度*/ int originalLength = 0; int numberOfBlank = 0; int i = 0; while(string[i] != '\0') { ++ originalLength; if(string[i] == ' ') ++ numberOfBlank; ++ i; } /*newLength 为把空格替换成'%20'之后的长度*/ int newLength = originalLength + numberOfBlank * 2; if(newLength > length) return; int indexOfOriginal = originalLength; int indexOfNew = newLength; while(indexOfOriginal >= 0 && indexOfNew > indexOfOriginal) { if(string[indexOfOriginal] == ' ') { string[indexOfNew --] = '0'; string[indexOfNew --] = '2'; string[indexOfNew --] = '%'; } else { string[indexOfNew --] = string[indexOfOriginal]; } -- indexOfOriginal; }}看完上述内容,你们对如何替换字符串中的空格有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注行业资讯频道,感谢大家的支持。
字符
空格
字符串
位置
内容
三个
方法
复杂
两个
代码
函数
复杂度
容量
思路
数组
时间
更多
知识
篇文章
行业
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
计算机三级数据库技术画图
网络安全资讯
vc工控软件开发
中小学网络安全意识文章
服务器管理工具怎么配置
串口服务器的构成
我了解的网络安全为题的手抄报
天府国际网络安全大赛
云服务器怎么买合适
圆形服务器是什么样子的
大理gpu云服务器代理
湖南数据库日志审计哪家好
对接数据库
互联网科技小报
大话西游君临天下是哪个服务器
为什么服务器没有响应进不去游戏
爆破服务器工具
网络安全信息秘密级别
初中信息技术数据库教案
网络安全基线加固服务
工业园区数据网络技术优势
漫说网络安全法十五
网络安全项目方案
江苏赛迪恒业网络技术
小学生网络安全小品
知商汇选互联网科技有限公司
网络安全木桶原则
数据库不允许更新的情况
sql 获取数据库表名
服务器408