為什么10000>score>=5000輸不出正確結(jié)果,而用score>=5000&&score<10000卻可以
為什么10000>score>=50 為什么10000>score>=5000輸不出正確結(jié)果,而用score>=5000&&score<10000卻可以?\
為什么10000>score>=50 為什么10000>score>=5000輸不出正確結(jié)果,而用score>=5000&&score<10000卻可以?\
2015-09-17
舉報(bào)
2015-09-17
區(qū)間判斷在邏輯上其實(shí)是兩個(gè)條件判斷用邏輯與相連:即?score大于等于5000?和?score小于10000?同時(shí)成立。 所以要用邏輯與運(yùn)算符(&&)將兩個(gè)條件判斷相連。
其實(shí) 5000<=score<10000 也是一個(gè)合法的復(fù)合語(yǔ)句,但無(wú)法達(dá)到區(qū)間判斷的效果,因?yàn)镃是這樣解釋它的:(5000<=score)<10000。
5000<=score的結(jié)果是true或false,然后這個(gè)bool值再與10000做大小判斷。因?yàn)閠ure會(huì)轉(zhuǎn)換為1,false會(huì)轉(zhuǎn)換為0,于是當(dāng)score小于5000,則整個(gè)表達(dá)為 0<10000;當(dāng)score大于等于10000,整個(gè)表達(dá)式為 1<10000,不管是哪種情況,整個(gè)表達(dá)式都是true。
2015-09-17
語(yǔ)法不允許后面是語(yǔ)法允許的