这个意思是说只要i不是0,就一直循环下去。你在while(--i)里面减1,然后又在循环体内减一,i--,所以循环一次就减了2,你的i=8,所以最后是4
这段程序很简单的:
do while 执行第一遍后:i=6,num=1;
do while 执行第二遍后:i=4,num=2;
do while 执行第三遍后:i=2,num=3;
do while 执行第四遍后:i=0,num=4;
此时,i=0,不满足循环的条件,跳出do while循环,然后输出num(=4)。
while(--i) 就是当i 不为0时,就为真;--i就是先减后用,在此即是先减1在判断i是否为零。
--i是条件 当它为零时 条件不满足 也就是为假 跳出循环