如何替换字符串中的空格
发表于:2026-11-02 作者:千家信息网编辑
千家信息网最后更新 2026年11月02日,今天就跟大家聊聊有关如何替换字符串中的空格,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。题目描述:实现一个函数,把字符串中的每个空格替换成 "
千家信息网最后更新 2026年11月02日如何替换字符串中的空格
今天就跟大家聊聊有关如何替换字符串中的空格,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。
题目描述:实现一个函数,把字符串中的每个空格替换成 "%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安全错误
数据库的锁怎样保障安全
科技信息互联网
互联网科技公司官网
碳银互联网科技
成都狮子座互联网科技
新华互联网科技校企合作
上海电发互联网科技有限公司
玖二柒互联网科技公司待遇
互联网科技中介
常德市电业局互联网科技部
顶级互联网科技成果有哪些
重庆威客帮互联网科技
互联网科技创新服务
苏州五指互联网络科技有限
华夏互联网科技业
深圳育鹏互联网科技有限公司招聘
互联网行业科技股
晋城互联网科技
烟台灵鸽互联网科技有限公司
容联科技互联网电商
科技美学互联网 艺术
科技互联网技术
金融科技 互联网金融
互联网金融公司科技
百单互联网科技有限公司
成都狮子座互联网科技
承德科技产业互联网发展
科技互联网大厂
互联网数据科技专业
徐州市互联网科技有限公司
互联网领先科技宣传片