输出 0,2; 原因是初始化是K=0;但是while循环里用的k++,k++是先赋值再自增, 如int a =0; int b = a++; printf("%d\n",b);//结果是0 a && b 逻辑与,当a为假时,那么整个就为假,而不会去执行b,所以 while()循环里k=0,那么整个条件就为false,n++>2 这条语句不会执行。所以最终结果是 0,2
第2个回答 2012-02-22
while(k++&&n++>2); 这时判断的时候k是0,n是2。
while 先判断k的值,如果成立,就会判断(运行)后没面的值; 因为k为0,所以这个while就结束了,后面的n++就不会运行了。所以循环结束。 结果就是 1,2
第3个回答 2012-02-22
while 里面的判断条件 k++和n++>2 执行第一次的时候 k++为0,不符合条件,直接退出,不执行 n++ 所有k=1,n=2