C语言的条件for (; !j&&i<=5;i++)

来源:百度知道 编辑:UC知道 时间:2024/04/30 12:08:15
int i=0,j=0;
for (; !j&&i<=5;i++)
j++;

这for循环中的条件怎么解释?
j取反并且i小于等于5?

为什么这循环次数是1次?

当j!=0时,!j==0(即为“假”),第一次执行j++之后,j值为1,然后进行判断时!j==0,所以!j&&i<=5这个条件不成立,所以不会继续执行。

!j是非运算!0=1 所以进入循环的第一次执行条件是成立的
而j++后 j=1 !j=0 0并且任何情况都是0 所以第二次执行条件是不成立的