哪位c语言大神能说说我这程序哪错了,谢谢啦!/*编写程序,过滤多余的空格,一个句子中也许有多个连续空格,
过滤掉多余的空格,只留下一个空格.
输入:一行,一个字符串(长度不超过200),句子的头和尾都没有空格.
输出:过滤之后的句子.*/
#include<stdio.h>
int main()
{
char a[200],b[200];
int i=0,j=0;
gets(a);
while(a[i]=='\0')
{
if(a[i]==' '&&a[i-1]==' ') i++;
else
b[j++]=a[i++];
}
printf("%s\n",b);
return 0;
}
最后那个b[j]=a[i]是什么意思呀
那步改为b[j]='\0'行不
追答可以,是一样的。
追问还有那个条件语句那里a[i+1]也可以写成a[i-1]也可以吧
追答不可以。
追问为啥呢
追答i从0开始,i为0则i-1越界。