当然有区别,首先解释Y表示值为真,N是值为假当型循环可以不执行循环体,例如:int i=5;if(i>=6) /*值为假,若值为真,则执行 i--; 在这里,没有执行循环体,如果换成直到型,例如:inti=5;do i--while(i<=6);即i <=6时不成立,从字面意思就是直到i<=6退出循环A的位置不同是因为循环方式不同,直到型至少循环一次,而当型可以一次也不循环。