题目:请实现一个函数,把字符串中的每个空格替换成"%20"。例如输入“We are happy.”,则输出“We%20are%20happy.”。
void replaceblank(char string[], int len)
{
if(string==nullptr || len<=0)
return;
int originallen=0;
int numofblank=0;
int i =0;
while(string[i]!='\0')
{
++originallen; //遍历原字符串的长度
if(string[i]='')
++numblank; //原字符串空格总数
++i;
}
}
int newlen=originallen+2*numblank;
if(newlen>len)
return;
int indexOforiginal=originallen;
int indexOfnew=newlen;
while(indexOforiginal>=0 && indexOfnew> indexOforiginal)
{
if(string[indexOforiginal]='')
{
string[indexOfnew--]='0';
string[indexOfnew--]='2';
string[indexOfnew--]='%';
}
else
{
string[indexOfnew--]=string[indexOforiginal];
}
--indexOforiginal;
}
}