[求助]有关循环结构的输出结果
下面程序的输出结果是int n=0;
while(n++=<2); printf("%d",n);
答案是4,为什么?既然是循环结构,那么输出的n的值应该不止一个才对,执行几次循环就应该输出几次n的值.可为什么答案是4?

[此贴子已经被作者于2006-9-24 10:50:50编辑过]
那前辈能不能帮我解答下~~
以下程序输出结果是:
#include<stdio.h>
main()
{int i,b,k=0;
for(i=1,i<=5;i++)
{b=i%2;
while(b-->=0) k++;
}
printf("%d,%d",k,b);
}
答案是8,-2,为什么?
我是这么理解的:while(b-->=0)就是说b的值要>0,b=i%2才会被执行,而我觉得既然1<=i<5,那么b的值就永远不可能为负,这应该变成死循环了,不知道我错哪里?