1樓:桐秀榮仲娟
輸出結果:30
原理:1.c語言的執行順序大多都是自右向左(但是少數c語言編譯軟體的輸出結果為31,它的執行順序是自左向右,這裡以vc++
6.0為例說明輸出30的原因)。
2.先執行--b+a,根據運算順序知道相當於(--b)+a,b先自減,即b=10,此表示式--b+a的值為31.
3.然後執行-
-a+b,相當於(--a)+b,a先自減,即a=20,此表示式--a+b的值20+10=30。
4.printf("%d\n",-
-a+b,-
-b+a);
輸出第乙個表示式的值,(printf函式輸出順序是自左向右)。
2樓:僑有福泥月
printf
為什麼引數裡只有乙個%d
??後面卻有兩個變數??
如果是printf("%d\n%d",-
-a+b,-
-b+a)的話輸出應該是
3031
系統先執行了
--b+a的,所以--b+a=31;
然後再執行
--a+b,那時候b已經被減1了,所以--a+b=30。
3樓:
選a、30
現場編譯得出的答案
c語言是一門科學,要注重實驗;
會得出30
的原因是printf函式中,輸出表示式的運算順序是由右到左的,先計算後面的(--b+a),此時,b的值自減1,變為10,再計算前面的(--a+b).對於--a和a--的區別應該不用我說了吧。所以最後結果是30.
而編譯程式只是在檢查printf中的格式化引數後才確定有幾個輸出項,並按次序輸出,所以最後輸出的是(--a+b)的值
以下程式的輸出結果是 main() { int a=21,b=11; printf("%d\n",- -a+b,- -b+a); } 求解,萬分感謝
4樓:匿名使用者
輸出結果:30
原理:1.c語言的執行順序大多都是自右向左(但是少數c語言編譯軟體內的輸出結容果為31,它的執行順序是自左向右,這裡以vc++ 6.0為例說明輸出30的原因)。
2.先執行--b+a,根據運算順序知道相當於(--b)+a,b先自減,即b=10,此表示式--b+a的值為31.
3.然後執行- -a+b,相當於(--a)+b,a先自減,即a=20,此表示式- -a+b的值20+10=30。
4.printf("%d\n",- -a+b,- -b+a); 輸出第乙個表示式的值,(printf函式輸出順序是自左向右)。
5樓:匿名使用者
printf 為什麼引數裡bai只有乙個%d ??後面卻有兩du個變數??
如果zhi
是printf("%d\n%d",- -a+b,- -b+a)的話dao輸出應該是
3031
系統先執行了 --b+a的,版所以--b+a=31;
然後權再執行 --a+b,那時候b已經被減1了,所以--a+b=30。
6樓:
先生bai 為什麼引數列表有兩個du
而你的佔位符
zhi只有乙個dao %d
如果你手誤的話那麼有兩個專占屬位符 答案是 3031
7樓:樂樂等待花開
- -a+b即為(--a)先計算得20,然後接著計算(--a)+b為20+11+31;
--b+a即為(--b)先計算得10,然後接著計算(--b)+a為10+20=30;
8樓:匿名使用者
錯誤,沒有結果,warning: operation on 『a』,'b' may be undefined
求輸出結果?main() int a=1,b=2;a=a+b;b=a-b;a=a-b;printf(「%d,%d\n」,a,b);
9樓:匿名使用者
a=a+b=1+2=3
b=a-b=3-2=1
a=a-b=3-1=2
這三條語句就是把ab值互換,所以輸出結果是2,1
10樓:紫色星晨
2,1;a=a+b,a變為3,;b=a-b,b變為1;a=a-b,a變為2;輸出a為2,b為1
以下程式的輸出結果是,以下程式的輸出結果是( )?
if a 10 ok1 a 10,所以 a 10 不成立,btw,這個地方 if else 之間 什麼都沒有,至少應該有個分號 else if ok2 x 10 ok2 0,所以 不成立 else x 1 最後結果 x 1 小章33學姐 if後面邏輯值為真時執行,if a 10 false else...
以下程式的輸出結果是,C語言問題 以下程式的輸出結果是?
c語言函式引數都是單向傳遞的,直接傳值是不可能改變原來的數值的。此題答案30,20 你的printf好像有點問題 include void fun int p1,int p2,int p3 main 按lz所寫 輸出為30,20,因為函式的引數為所宣告變數的副本,這樣不會改變原有的變數。如果想改變原...
c語言以下程式的輸出結果是a為什麼
輸出結果是字元z 位元組是20是因為 10 定義了你為x資料組準備了10個位子,沒個位子可以存放乙個資料 佔2節 10 2 20 位元組 printf c 由於沒有輸出列表所以c編譯器不知道是列印哪個變數裡的值 他產生的當然是個隨機數.假定int型別變數占用兩個位元組,其有定義 int x 10 則...