全部问题 > 当前问题

这段代码怎么改才能对?

int i,j,n=0;
    for(i=0;str[n];i++)
    if(str[i]==' ')
    {
    for(j=i;str[j];j++)
    str[j]=str[j+1];
    }

    else n++;


str[i]=0;

籍策襄 2017-2-25 10:03:08

共 1 个回答

qqq 2017-2-25 14:46:57

你不应该想着遇到空格怎么样,而是想着把不是空格的字符存进新数组就好啦。

不过就算按照你的思路,你的代码也有不少问题,下面是我改过的,要是看不懂再问吧。

int i,j=0;
    for(i=0;str[i];i++)

    {

           if(str[i]!=' ')

          {

               str[j]=str[i];

               j++;

          }

    }

str[j]=0;


问题来自: 编程题真题