sytn.net
当前位置:首页 >> whilE x >>

whilE x

while()是循环语句.while(expr)表示当逻辑表达式expr为真时,循环运行循环体,直到expr值为假或遇到break语句时退出.!x是逻辑非操作,当x为0时,值为真,否则值为假. 在这里等效于x==0.在while(!x)后面有一个分号,表示该循环的循环体为空,即只做判断和循环,并不执行操作.于是这句的意思就是,如果x为0,则一直循环下去,不做操作,否则继续执行.如果没有其它线程来改变x的值,那么这里就是一个死循环了.

判断x是否等于0 如果等于0执行while后面语句,否则跳出循环.!运算优先于!=运算,所以是while((!x)!=0) 等价于 while(!x) 即while(x==0) 所以就是判断x是否等于0执行while后面语句

while是循环语句x--就是每循环一次就自减1 这样的话,直到x==0时就退出循环了

if (!(x%y)) //x%y是取余操作,x%y是取x除以y的余数,所以!(x%y)就是判断的x是否能被y整除,如果能整除,x%y等于0,!(x%y)为真,进行return y处理;如果不能整除,x%y不为0,!(x%y)为假,不进行if内处理,继续后续处理.{ return y; } do { i=x

!是“逻辑非”操作符,所以!x就是给x取反.在C里,非0为“逻辑真”,用1表示,0是“逻辑假”;所以!x==0实质就是x!=0的意思.所以,while(!x==0)等效于while(x!=0),即当x不等于0时继续循环,一直循环到x变为0时结束.

如果x != 0, 则 !x 为 0,即假,如果x == 0,则 !x 为 真.while循环和 do-while 循环的区别在于,while是先检查是否复合条件再循环,而do-while循环则是在循环体尾检查是否符合条件,这就说明,do-while循环内的语句至少被执行一次.这好

当x--等于0时,printf while(x--); 首先,x--这个式子第一次执行等于2(x此时等于1) 然后,x--执行等于1(x此时等于0) 最后,x--执行0(x此时等于-1) 当x--等于0是程序终止, 此时x=-1

while(!x)指的是x的逆是1时.那么在编程、电脑.1的逆是0,所以跟while(x==0)等价

do {语句} while(!x);的功能是先执行一次“语句”,然后检测x是否为0,不为0则在此执行“语句”,然后再判断,如此反复,知道x为0为止.

当x为0时,那么!x表示x不为0,所以此时while(!x)等价于while(x!=0)当x不为0时,那么!x表示x为0,所以此时while(!x)等价于while(x==0)

网站首页 | 网站地图
All rights reserved Powered by www.sytn.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com