《剑指offer》替换空格
2016-01-18 20:24
113 查看
题目描述:
请实现一个函数,将一个字符串中的空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。
Solution:
请实现一个函数,将一个字符串中的空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。
Solution:
#include <iostream> using namespace std; void replaceBlank(char str[],int length) { if(str==NULL||length<0) return ; int originalLength=0; int numberOfBlank=0; int i=0; while(str[i]!='\0') { originalLength++; if(str[i]==' ') ++numberOfBlank; ++i; } int newLength=originalLength+numberOfBlank*2; if(newLength>length) return; int indexOfOrignal=originalLength; int indexOfNew = newLength; while(indexOfOrignal>=0&&indexOfNew>indexOfOrignal) { if(str[indexOfOrignal]==' ') { str[indexOfNew--]='0'; str[indexOfNew--]='2'; str[indexOfNew--]='%'; } else{ str[indexOfNew--]=str[indexOfOrignal]; } --indexOfOrignal; } } int main() { char str[30]="we are happy!"; replaceBlank(str,30); cout<<str<<endl; return 0; }
相关文章推荐
- json字符串转 Dictionary
- css-ie6下实现最小,最大宽度
- js数组操作-找出一组按不同顺序排列的字符串的数组元素
- vollty中关于json的学习总结
- js继承的实现方式
- 经常使用的js小方法
- js-数据转换
- bootstrap 样式规范总结
- POJ -3253 Fence Repair
- 理解js原型和原型链
- css-div下内容垂直居中
- Structure and inference in annotated networks - note
- nodemon 基本配置与使用
- angularjs locationProvider
- 《剑指offer》——第一个只出现一次的字符
- 加载模式
- document.body和document.body的区别和兼容性&&js自定义弹框的方法
- HDU1015Safecracker
- js中将两个日期字符串相减 获得天数
- Play FrameWork JSON操作小结