题目是“编写一个程序,以每行一个单词的形式打印其输入”。代码看着应该没问题啊。
#include <stdio.h>
#define IN 1
#define OUT 0
int main()
{
int c, state;
state = OUT;
while ((c = getchar()) != EOF);
{ if (c == ' ' || c == '\t' || c == '\n')
{
if (state = IN)
{
putchar('\n');
state = OUT;
}
}
else if (state = OUT)
{
state = IN;
putchar(c);
}
else
putchar(c);
}
return 0;
}
人家里面可是== 双等号 你是=。。。。能一样么
if和elseif判断括号里的
if (state = IN) 会永远为真的!! 就一直输出 换行 , 用 ==
else if (state = OUT)
if (state = IN)
都要是==
=与==写错了,这种错误很容易犯错,而且你还很难找出来,所以一定要细心。