C语言的while坑

while(a<b<c)

  • 首先while里面写,a<b<c是不规范的,规范写法:a<b&&b<c。
  • 其次a<b<c的运算是:从左往右依次执行,(a<b)得出true或者false即1或者0,再计算(a<b)<c的布尔值即1满足条件执行循环体,0时不满足跳出。
  • 但此处编译会通过,不会报错,原因是:编译只检查语法对错,这里是逻辑上的失误(用的好也会是很高超的技巧)
  • 这里给出实战例题
    C语言的while坑
    输出结果为:
    C语言的while坑
  • 结果解析:循环体执行两次后跳出,a和b互换两次又换回来了,c自减两次为0。

在此感谢祖师爷C语言之父--------------丹尼斯里奇,对后代的勉励
1024,程序员日快乐----------------------THE LITTLE BEAST