博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
剑指offer例题4—替换空格
阅读量:4350 次
发布时间:2019-06-07

本文共 589 字,大约阅读时间需要 1 分钟。

#include<iostream>

#include<string>
using namespace std;
void ReplaceBlank(char *str,int length)
{
 if(str==NULL&&length<0)return;
 int i=0;
 int j=0;
 for(i=0;str[i]!='\0';i++)
 {
  if(str[i]==' ')j++;
 }
 int newlength=i+2*j;
 if(newlength>=length)return;
 int l=i-1;
 for(int k=newlength-1;k>=0&&k>=l;)
 {
  if(str[l]==' ')
  {
   str[k--]='0';
   str[k--]='2';
   str[k--]='%';
   l--;
  }
  else
   str[k--]=str[l--];
 }
 str[newlength]='\0';
}
int main()
{
 int n=100;char str[100];
 while(gets(str))
 { 
  ReplaceBlank(str,n);
     cout<<str<<endl;
 }
 return 0;
}

转载于:https://www.cnblogs.com/tgkx1054/archive/2012/12/29/2839183.html

你可能感兴趣的文章
状态压缩题目小结
查看>>
Android WebView 开发具体解释(三)
查看>>
2016-2017-2 20155325实验二《Java面向对象程序设计》实验报告
查看>>
POJ.3145.Common Substrings(后缀数组 倍增 单调栈)
查看>>
BZOJ.1935.[SHOI2007]Tree园丁的烦恼(CDQ分治 三维偏序)
查看>>
c++可变参数(示例)
查看>>
4923: [Lydsy1706月赛]K小值查询 平衡树 非旋转Treap
查看>>
第522篇--DataTable to Excel C#
查看>>
C++\virtual 虚函数、纯虚函数
查看>>
asp.net mvc 4多级area实现技巧
查看>>
Solr
查看>>
MySQL binlog数据库同步技术总结
查看>>
算法设计--查找无序数组中第K大的数字
查看>>
Linux目录结构 重要目录结构详细
查看>>
Iris Classification on PyTorch
查看>>
HDU 1525 Euclid's Game 博弈
查看>>
数据写入文件
查看>>
linux squid
查看>>
小代码
查看>>
2018 桂林ccpc现场赛 总结
查看>>