1樓:塗增嶽牢嬋
我執行了下復
,結果是3,10
#include
main()
這裡面制的(++a,b++)是個bai逗號表示式du,a++和b++都執行了但最後輸出zhib++的結果所以daoa+b+c就是2+3+5
2樓:友玉花凌鸞
如果你在下面再加一句printf(「%d,%d\n」,(++a,b++),a+b+c);a,b的值就會變。
而這樣的話應該printf函式對變數唯讀一遍,就是在乙個printf中a都是1了。
3樓:初起雲尤丙
結果是來3,10啊。這主要是由於自增
操作源符++前置還是後置決定的,比如說++a,就是先自增再使用,而a++就是說先使用再自增。執行printf(「%d,%d\n」,(++a,b++),a+b+c)這條語句的過程中,a=2(就是說已經自增了),b=3(還沒自增)。等這條語句執行完之後,那麼a=2
b=4~
4樓:羅夕古卯
printf(「%d,%d\n」,(++a,b++),a+b+c);其中的(++a,b++)是什麼東東,有這麼寫的嗎?
++a表示先a=a+1再輸出,b++表示先輸出再b=b+1
有以下程式程式執行後的輸出結果是
這個問題嘛,其實比較簡單。由於for迴圈裡面沒有趨近迴圈結束的語句,所以每次for迴圈都是要執行的。i 0時,兩個if都不成立,所以直接執行i 和s 1這兩句,使i 1 以此類推,i 2時,也是這樣執行,最後i 3i 3進入迴圈內的第乙個if語句判斷是成立的,所以執行continue,也就是跳出本次...
以下程式執行後的輸出結果是mainint x 20 printf
答案是1,0 因為根據算數優先順序從左到右進行運算 0 x 為真,真就是1,1 20也為真所以為1,然後下一條0 x為真就是1,x 20為假就是0,1與上0就是0 以下程式執行後的輸出結果是 main int x 10 printf d,d n x,x c語言函式引數處理順序 從右向左 printf...
執行以下程式後,輸出的結果是mainint y 10 do ywhileyprintfd n ,y
雨落巴黎塔 選ddo while語句 先執行do裡面的迴圈體,再去判斷while條件是否成立,如果成立,一直執行下去,直到不成立終止迴圈 選d.c語言書上寫有,do 語句 while 表示式 其中語句是迴圈體,先執行後判斷,先執行一次指定的迴圈體語句,然後判別表示式,當表示式的值為非零 真 時,返回...