首页 > 代码库 > 剑指OFFER之替换空格
剑指OFFER之替换空格
- 题目描述:
请实现一个函数,将一个字符串中的空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。
- 输入:
每个输入文件仅包含一组测试样例。
对于每组测试案例,输入一行代表要处理的字符串。
- 输出:
对应每个测试案例,出经过处理后的字符串。
- 样例输入:
We Are Happy
- 样例输出:
We%20Are%20Happy
Code:#include <stdio.h>#include <stdlib.h> void ReplaceBlank(char str[]){ if(str==NULL) return; int originalLength=0; int numberOfBlank=0; int i=0; while(str[i]!=‘\0‘){ ++originalLength; if(str[i]==‘ ‘){ ++numberOfBlank; } ++i; } int newLength=originalLength+2*numberOfBlank; while(originalLength>=0){ if(str[originalLength]!=‘ ‘){ str[newLength--]=str[originalLength--]; }else{ --originalLength; str[newLength--]=‘0‘; str[newLength--]=‘2‘; str[newLength--]=‘%‘; } }} int main(){ char str[1000000]; while(gets(str)){ ReplaceBlank(str); printf("%s\n",str); } return 0;} /************************************************************** Problem: 1510 User: lcyvino Language: C Result: Accepted Time:10 ms Memory:1820 kb****************************************************************/
剑指OFFER之替换空格
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。