C语言中的循环问题怎么用

img


这个程序中如何理解!find 啊?当if 后面的语句不满足时不是没有find的值吗,那!find又怎么表示为真继续循环的呢,当if中的语句满足时,find为真,while为真,不是应该继续执行循环吗,为什么会结束循环呢?

find有初值为0,while循环的条件是!find,就是find取反为真继续循环,当满足if条件是find为1,所以!find为0无法继续进去while循环

!表示“非”,是逻辑运算符中的一种,!0就是true,!1就是false
一开始的时候find=0,所以!find为true;
当满足条件时find=1,所以!find为false,结束循环

一上来find=0,因此能够进入while循环。x的初始值为1,满足x%2=1,但后边的条件不满足,所以继续往下。x自增1,变为2。这次也不满足全部条件,x继续增加1……
直到满足x为奇数,并且x%3为2(比如5),x%5为4(比如9),x%6=5(比如11),x%7为6(比如13)的时候才打印并跳出循环。