替换字符串中的空格为%20:
#include <string.h>
void replaceSapace(char *str)
{
int len = strlen(str);
int SpaceNum = 0;
for (int i = 0;i < len; i++)
{
if (str[i] == ' ')
{
SpaceNum++;
}
}
// len = len + SpaceNum*2;
int j = len + SpaceNum*2-1;
for (i = len-1 ; i >=0 ; i--)
{
if (str[i] == ' ')
{
str[j--] = '0';
str[j--] = '2';
str[j--] = '%';
}
else
{
str[j--] = str[i];
}
//打印每次循环之后数组所有元素
// for (int k = 0;k< len + SpaceNum*2;k++)
// {
// printf("%c",str[k]);
// }
// printf("
");
}
}
int main(int argc, char* argv[])
{
char str[100] = "xwl,hello,xwl,you are the best!";
// printf("%s
",str);
replaceSapace(str);
return 0;
}