while 循环中else if 不运行

img


mouth的值改变了为什么还是运行的if,while只能对一个条件进行循环吗

“==”的优先级大于“||”运算符,所以第一个if恒成立

img


你这个if语句写的!month==1虽然其他情况下不成立,但是你后面的||3......只要非0都为true啊,所以永远会进到if里,正确的应该是month==1||month==3......

不能这样写||优先级大于==所以不会达到你想要的效果而是都是判断它是否等于1