C语言之字符串数组空格替换

2015-11-19 23:07:00 · 作者: · 浏览: 16
问题描述:
?
字符串替换空格:请实现一个函数,把字符串中的每个空格替换成“%20”。例如输入“we are happy.”,则输出“we%20are%20happy.”。
?
代码实现:
?
#include 
int replace(char *p)
{
#if 0
 while(*p!='\0')
 {
  if(*p==' ')
  {
   printf("%%20");
  }
  else
  {
   printf("%c",*p);
  }
  p++;
 }
#endif//结束#if 0
if (*p == ' ')
{
 return 1;
}
else return 2;
 printf("\n");
}
int main()
{
 char arr[] ="we are happy.";
 char *p = arr;
 int ret = 0;
 while (*p != '\0')
 {
  ret = replace(p);
  if (ret == 1)
  {
   printf("%%20");
  }
  if (ret == 2)
  {
   printf("%c",*p);
  }
  p++;
 }
 printf("\n");
 return 0;
}

?

运行结果: