替换空格

#include<iostream>
#include<string>
#include <algorithm> 
using namespace std;
/*题目: 替换空格 
请实现一个函数,将一个字符串中的每个空格替换成“%20”。
例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。
*/
/*
思路1:先扫描看看有多少个空格,再从后往前
思路2:复制一个string,从前往后 
*/
	void replaceSpace(char *str,int length) {
		int j,space=0;
		for(int i=0;i<length;i++){
			if(str[i]==' ') space++;
		}
		j=length+2*space;
		while(length>=0){
			if(str[length]!=' ')
				str[j--] = str[length--];
			else{
				str[j--] = '0';
				str[j--] = '2';
				str[j--] = '%';
				length--;
			}
		}
	} 
    
int main(){
	char s1[100] = "123 WE ARE"; 
	replaceSpace(s1,10);
	int i=0;
	while(s1[i]!='\0'){
		printf("%c",s1[i++]);
	}
	return 0; 
} 

 

发布了71 篇原创文章 · 获赞 16 · 访问量 1万+
展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 编程工作室 设计师: CSDN官方博客

分享到微信朋友圈

×

扫一扫,手机浏览