题目描述
请实现一个函数,将一个字符串中的空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。
c++ 代码
不过C语言可以更好的让我知道实现过程
c++ 代码
#include <stdio.h>
#include <string.h>
void replaceSpace(char *str,int length)
{
int i = 0;
int count = 0;
int num = 0;
for(i = 0;i < length;i++)
if(str[i] == ' ')
count++;
num = length + count*2;
str[num--] = '\0';
while((--length) >= 0)
{
if(str[length] == ' ' )
{
str[num--] = '0';
str[num--] = '2';
str[num--] = '%';
}else{
str[num--] = str[length];
}
}
printf("%s\n",str);
}
int main(int argc,char *argv[])
{
char str[100]="we are happy";
replaceSpace(str,strlen(str));
return 0;
}
python 实现,感觉到python处理字符串还是太强大,要好好练习python
#coding:utf-8
class Solution:
def replaceSpace(self,s):
return s.replace(' ','%20')
if __name__ == "__main__":
s = "I love you"
print s
mystr = Solution()
print mystr.replaceSpace(s)
不过C语言可以更好的让我知道实现过程