設a 3,b 4,執行語句「printfd,d

時間 2021-08-11 17:32:25

1樓:越答越離譜

4,3這個是逗號表示式的問題,逗號表示式從左往右執行,最後顯示最右邊的那個。

即(a,b)相當於b,如果是printf("%d,%d",(++a,++b),(++b,++a));

輸出為6,5

擴充套件資料

printf函式在輸出格式 format 的控制下,將其引數進行格式化,並在標準輸出裝置(顯示器、控制檯等)上列印出來。

如果函式執行成功,則返回所列印的字元總數,如果函式執行失敗,則返回一個負數。

有時printf語句會很長,以至於不能在一行被放下,如果我們必須分割一個字串,有以下三種方式可以選擇。需要注意的是,我們可以在字串中使用 "\n" 換行符來表示換行字元,但是在字串中不能通過回車鍵來產生實際的換行字元。

2樓:匿名使用者

逗號表示式:輸出後一項的值,即4,3

3樓:冰至誠

4,3這是逗號表示式,結果為逗號後面的值

4樓:楊力聞

他們都說了,我拓展下吧,如果有n個值,那麼輸出最後一個哦

5樓:荀夢江南

就是逗號表示式的值的問題

輸出結果:4,3

6樓:匿名使用者

4,3(a,b)返回b的值

(b,a)返回a的值

c語言中設a=1,b=2,c=3,d=4;執行printf(%d%d%d%d\n",a==b==c,c=a==b,c==(a=b),b=c);的結果是什麼 100

7樓:匿名使用者

c語言提供一種特殊的運算子——逗號運算子。用它將兩個表示式連線起來專。如:

3+5,6+8稱為逗號表示式,又屬稱為「順序求值運算子」。逗號表示式的一般形式為表示式1,表示式2逗號表示式的求解過程是:先求解表示式1,再求解表示式2。

整個逗號表示式的值是表示式2的值。例如,上面的逗號表示式「3+5,6+8」的值為14。又如,逗號表示式a=3*5,a*4對此表示式的求解,讀者可能會有兩種不同的理解:

一種認為「3*5,a*4」是一個逗號表示式,先求出此逗號表示式的值,如果a的原值為3,則逗號表示式的值為12,將12賦給a,因此最後a的值為12。另一種認為:「a=3*5」是一個賦值表示式」,「a*4」是另一個表示式,二者用逗號相連,構成一個逗號表示式。

這兩者哪一個對呢?賦值運算子的優先順序別高於逗號運算子,因此應先求解a=3*5(也就是把「a=3*5」作為一個表示式)。經計算和賦值後得到a的值為15,然後求解a*4,得60。

整個逗號表示式的值為60。

設有int a 3,b,則執行語句 b! a 2 後,b

宣鈺苑卿 根據運算子優先順序 條件運算子大於 賦值運算子,所以本題實際上是b a 3?2 1 因為a 3,所以a 3判定失敗,結果為1 所以b 1 1和1對於 a b c 1 b c 2 前後接兩個表示式,一個是 a b c 1,另一個是b c 2 第一個表示式結果為c 1即2 因為 a b 非0,...

設a 3,b 4,c 5試計算以下表示式 1 a bc

1 a b c b c b c 為 false a b c為 false 1 式為false 2 a b c b c a 3 0 2 式為true 3 a b c 1 b c 2 a b 0 a b c 1 4 為 true 又 b c 2 0 所以 3 式為true結果為 0 1 1 c語言中採用...

設a 2 b 3c 4 d 5求下列表示式的值

羅今成 在這些運算子中,not的優先順序是最高的,其次是and 最後是 or,即 這是c語言中的 因此 1.a b and c d or 2 a c 就相當於 a b c d 2 a 2.3 2 b or a c and b c or c d 就相當於 3 2 b a c b c or c d 3....