37的答案为什么是语句不能执行呢

 

for(;c=(getchar()!='\n');)
c=(getchar()!='\n');()括号内的语句先执行:gechar()!='\n',这是条件判断语句,得到是判断的逻辑值1 或 0,
再将这个逻辑值赋值给c,这里就成赋值语句了。而在for()循环里,这里应该是判断循环是否结束的条件判断语句。