新手OJ,C语言 去除字符串中的所有空格模块, 不知为何出错,求大神指点

作用: 把数组a中的所有空格去除, 并把后面的往前移动。
例如: a b c
变成:abc

字符指针 *p *q 数组a[]

for(p=&a[0]; p!='\0'; p++)
if(*p==' ')
for(q=p; *(q+1)!='\0'; q++)
*q=
(q+1); //去除a字符串中的空格

但总是不对, 求大神指点。

5个回答

 #include<stdio.h>
int main()
{
 char str[20];
 int i,k=0;
 gets(str);
 for(i=0;str[i]!='\0';i++)
 {
  if(str[i]!=' ')
    str[k++]=str[i];
 }
 str[k]=str[i];
 puts(str);
 return 0;
}
qq_32653757
qq_32653757 谢谢你, 手打代码, 谢谢
4 年多之前 回复

应该是*q=*(q+1)吧

一楼正解。。。。。。。。

我。。。 评论居然是倒过来的

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问