1樓:
||是符號或,優先順序是從左到右判斷。如果第一個語句為真則結果為真,不執行第二個語句直接跳出;如果第一個語句為假則執行第二個語句,當第二個語句為真時結果是真,為假時結果為假。因為x是3,++x就是4,所有非零的數字都是真,所以t的值直接為1,不執行++y,所以y還是最初賦值的3.
2樓:顓孫思蓮閻妞
4吧++y是,先把y的值+1,再使用...你給的**並沒有其它地方修改其值的
3樓:文維眭仙
x=y=3;首先3賦值給x和y,x=3;y=3然後t=++x||++y;這個語句要理解||這個的含義例如:a||b當a為真(不等於0為真)時,這個語句就成立了,不再考慮b的值,也不再處理後面的b
的表示式;所以,t=++x||++y;x=3時候,t=++x(就t=4);++y不用處理的~~
如果:a||b當a為假時候(等於0)就處理b的表示式!!
就這樣:x=3,y=3,t=4;
(3)執行下列語句後,x的值是( ),y的值是( )。 int x,y; x=y=1; ++x||++y;
4樓:小小不服
選擇 ④ 和
抄 ③
當執行 ++x || ++y 的時候
由於編譯器的優化問題zhi 當執行到++x 不為 0的時候 不會執行 || 後面的dao ++y
所以 y 還是 初始值 1
舉一反一:
假如 語句變為 --x|| y++
由於 || 前面的 --x 值為 0 為 假 那麼後面就會執行 y++
最後 的結果 是 x =0 ,y=2
C語言設i,j,k均為int型變數,則執行完下面的for迴圈後,k的值為
c語言 設i,j,k均為int型變數,則執行完下面的for迴圈後,k的值為10。for i 0,j 10 i j i j k i j 表示,i初始值為0,j初始值為10。判斷i是否小於等於j。如果成立,則k為i j,i為i 1,j為j 1。繼續迴圈判斷,直至,i大於j時,結束迴圈。因此,當i 5,j...
設x和y均為int型變數,則執行下面的迴圈後y的值為
先來看看x的變化 1 6 3 8 5 10 每迴圈一次,y的值加1,x的值改變一次。故最後跳出迴圈的時候y 6。continue和break的含義首先應該讀懂!x 1,x 2 1,為真,執行。x x 5 6 x x 3 3 然後執行y y 1 2 x 3,x 2 1,為真,執行。x x 5 8 x ...
程式設計題 若x,i,j和k都是int型變數,則計算表示式x
陽光上的橋 x 32 因為逗號表示式是從左到右執行,最後一個式子的值作為整個表示式的值。 x i 4,j 16,k 32 其中i 4,j 16,k 32為逗號表示式,逗號運算子連線三個表示式。最後一個表示式的值作為整個逗號表示式的值。結果 x 32 樓上二位正解,32 其實你可以自己嘗試,看下結果就...