1樓:洞爺湖閒人
有木有注意到你的if語句後面沒有任何命令,所以說你的if是沒有任何作用的,程式直接執行了4x4次迴圈,依次把x,y,z都加到4就停止了。你也可以依次按f10跟蹤變數(需要管理員賬戶的哦)觀察變數的改變。
2樓:匿名使用者
if(z=x, x=y, y=z) 中的z=x, x=y, y=z是逗號表示式
逗號表示式的要領:
(1) 逗號表示式的運算過程為:從左往右逐個計算表示式。
(2) 逗號表示式作為一個整體,它的值為最後一個表示式的值。
(3) 逗號運算子的優先順序別在所有運算子中最低。
另外,程式中判斷語句
if(z=x, x=y, y=z);
等效於if(z=x, x=y, y=z)
3樓:匿名使用者
就輸出 z=4 x=4 y=4
因為if()後面有個空語句 並且所有的for迴圈和if後面的語句都沒{}括起來 所然 後面是單語句可以這樣 但這是新手錯誤的**之一 並且當**夠多是這種錯誤很難發現
4樓:匿名使用者
3重迴圈,最內層執行的f語句,if語句的條件是逗號表示式,最終值是最後一表示式y=z的值;當y=z時執行空操作,y≠z時更是不執行(其實由if語句為空,可直接得到迴圈體僅僅是迴圈變數的遞增而不執行其他命令);這樣最終迴圈變數x,y,z 均自增為4
因if語句沒執行任何操作,故可省去,迴圈語句可精簡為
;//空操作
5樓:小哥嗷嗷唬
就算是x!=y y!=z x!=z,因為你沒用{}括起來,所以最後執行的printf是在上面三個迴圈都迴圈結束後再執行的。迴圈結束後當讓 x=4 y=4 z=4 啦=。=
c語言簡單問題選擇題麻煩解釋一下答案
1 a k分配了資源,未賦值之前是無意義的2 a b左邊的表示式未賦值給x 3 a 需要轉義符,改成 4 d 其中b應該解釋為unsigned int a k的值若沒有bai初始化,會有個隨機值,du我們不能確定zhib 錯了,b僅僅dao 是2 x,並不是2 x b null是空指標,a明顯專對,...
求c語言大神解釋一下這段的意思,語言最好通俗易懂,謝謝了
素數只能被1和他本身整除。假設一個數n 那麼列舉從2到n 1所有的整數,依次判斷如果都不能被整除,那就是素數了。事實上列舉2到根號n的所有整數即可,具體可從數學上證明 c語言 求大神解釋什麼意思 這句話的意思是下面這種情況 int main int f 這種呼叫方式c語言允許,c 不允許 求大神解釋...
解釋一下c語言篩選法求素數
如果定義為 a 100 那麼該陣列的下標範圍是 a 0 a 99 為了用a 100 就不得不定義到101 這句表示執行以下100行 a 1 1 a 2 2 a 3 3 a 100 100 用迴圈語句寫就是 for i 0 i 101 i a i i 每當輸出到第10個,20個 90個的時候就換行 而...