【系統公告】頁面上方功能列及下方資訊全面更換新版,舊用戶可再切回舊版。 前往查看

計算機概論、大意(資訊科學概論,電腦常識,電子計算機概論)題庫下載題庫

上一題
26. 有關以下 C 語言撰寫之程式,下列敘述何者正確?
#include <stdio.h>
#include <iostream>
main()
{
int a, b, c, d;
c=(a=2, 3* a);
d=(a=b=2, 4* b);
printf(''%d, %d, %d, %d'', a, b, c, d);
system(''PAUSE'');
}
(A)執行後輸出 2,2,6,8
(B)執行後輸出 2,2,2,2
(C)執行後輸出 2,4,6,8
(D)編譯後顯示錯誤訊息


答案:登入後觀看
難度: 困難
8F
牛奶鍋 高三下 (2020/06/11)

5ee240c47288d.jpg#s-1024,604為什麼錯誤?
9F
YY 高一下 (2020/07/13)

iostream -> C++ not for C


10F
蔡明勳 高三上 (2022/07/26)

62dffd441006b.jpg#s-384,331

62dffd53060c7.jpg#s-343,80

'()' 的優先順序(Operator precedence) 高於 '='

然後 '()' 的相依性是由左至右 所以'()' 內總是會回傳最右邊的值

至於 ' , ' comma 的優先順序是最低的,作用只是分隔參數,不用管它

所以
c=(a=2, 3* a); 就是最右邊的值被返回 3*a = 6

d=(a=b=2, 4* b); 最右邊的值被返回 4*b = 8 

'=' 的相依性是由右至左,所以是先 b = 2  再 a = b (2先賦值給b,b再賦給a)

參...


查看完整內容

26. 有關以下 C 語言撰寫之程式,下列敘述何者正確? #include <..-阿摩線上測驗