每日一练--(剑指offer)替换空格

时间:2023-02-20 15:57:39

描述

请实现一个函数,将一个字符串s中的每个空格替换成“%20”。

例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。

数据范围:每日一练--(剑指offer)替换空格。保证字符串中的字符为大写英文字母、小写英文字母和空格中的一种。

示例

输入:

"We Are Happy"

返回值:

"We%20Are%20Happy"

思路

首先用求出给定字符串(s)长度的长度(sz),定义新的字符数组(ch),用for循环排查数组(s)中的所有字符,如果字符不等于空格,使ch[j]=s[i];然后再加加j,如果字符等于空格,就使ch[j]='%',ch[j+1]='2';ch[j+2]='0';再使j=j+3;

/**
* 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
*
*
* @param s string字符串
* @return string字符串
*/
char* replaceSpace(char* s ) {
// write code here
int sz=strlen(s);
int i=0;
int j=0;
char ch[10000]={0};
for(i=0;i<sz;i++)
{
if(s[i]!=' ')
{
ch[j]=s[i];
j++;
}
else
{
ch[j]='%';
ch[j+1]='2';
ch[j+2]='0';
j=j+3;
}
}
return ch;
}

链接

​https://www.nowcoder.com/practice/0e26e5551f2b489b9f58bc83aa4b6c68​