求解第一段代码为什么输出的i不是3 第二段代码怎么判断啊?

img

img


求解第一段代码为什么输出的i不是3,
第二段代码要怎么判断啊?

if语句 上面的变量i 和if语句 里面的变量i 是不同的
可以了解变量作用域的问题,
改进,可以把if语句里的int去掉就好了

-10<x<0,语言中不是按我们想的执行,而是根据<的左结合性,先判断-10<x,这个结果无非就是0或1,接着判断0<0,或者1<0,这两个都为假,所以结果为0

因为第一个那个是只在if里面的,而且是变量定义
第二个是因为当x不满足这个区间它就是0,满足这个区间就是1