這會有 compile error. 因為
java control flow 要求boolean value. 0 or 1 非boolean value.
true or false 才是.
※ 引述《nightranger (長夜巡弋)》之銘言:
: ※ 引述《jou516 (weijou)》之銘言:
: : 在寫練習題的時候,關於流程控制結構的問題
: : 題目如下
: : _ 請問下java 程式與運算結果的j值為何
: : i = 5; j = 0;
: : if( i==5 ) j=5;
: : if( i= 3) j=2;
: : a. 1
: : b. 5
: : c. 7
: : d. 2
: : 結果答案寫 d. (j=2)
: : 能說明為什麼嗎?! 因為我覺得好像是 j=5 ?!
: : 謝謝各位
: 程式一共三行,第一行設定初值,沒什麼
: 第二行判斷是否i等於5,正確,所以j=5,到這裡ok
: 第三行....有人說 i = 3不是邏輯式,沒錯,但是
: 那是個指定式,把i的值指定為3,3為非0
: 在if的判斷式裡非0值為true,因此後面j = 2會被執行
: 因此j的值最後為2。
: 手頭上目前沒有java的compiler可測,就C/C++而言上面
: 三行程式碼是可執行的。
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 87.194.42.127