問題詳情
26 執行下列 C 語言程式後產生的輸出為何? #include < stdio.h > main() { int a = 0, b = 0; if( ((a=1) < b) && ((b=2) < a) ) { a += 10; b += 10; }printf(“%d, %dn”, a, b);} (a)11,12 (b)11,10 (c)1,2 (d)1,0
參考答案
答案:D
難度:困難0.279793
統計:A(26),B(39),C(50),D(54),E(0)
用户評論
【Yu Han Lin】評論
運算 x && y ,y 只在 x 為 true 時才進行評估a=1會執行但因為a<b不成立, 所以後面的判斷式沒有再執行的必要, 因此b還是0而非2答案D
【imitation】評論
這題可能要送分,只是沒人提出釋疑?不同編譯器可能會執行C或D選項