一道题 帮忙看看有没有更好的方法
编写一个函数,从一个字符串中除去多余的空格.函数原型如下:void deblank(char string[]);
当函数发现字符串中如果有一个地方由一个或多个连续的空格组成,就把它们改成单个空格字符.
程序代码:void deblank(char string[])
{
int i,n;
while(*string != '\0')
{
if(*string != ' ')
string++;
else
{
//计算空格数
for(i = 1; *(string+i) == ' ';i++)
continue;
i--;//需要删除的空格数
if(i == 0)
{
string++;
continue;
}
//删除空格
for(n = 1;*(string+i+n) != '\0';n++)
*(string+n) = *(string+i+n);
*(string+n) = '\0';
}
}
}想了很久也没有想到一个更好的方法,大家帮帮忙吧.









谢了,慢慢理解中.....
