1樓:匿名使用者
這個應該是選c。已經給你執行了,截圖了。你看看。
原因如下:先執行a=2*3,a=6,然後再a*5=30,注意此時有一個括號,說明前面這個逗號表示式的值為30.後面再接著一個逗號表示式。
因為賦值符號 = 的優先順序比逗號的高,所以直接把30賦值給了i。
如果把這題的括號去掉的話,結果就是6了。同樣根據優先順序的方法,i直接就等於a=2*3了。但是如果把題換成i=(a=2*3,a*5,a+6);後,答案就是12了。
根據逗號表示式的特點,就可以得出答案。
這題主要考優先順序關係。要學好c語言,這個一定要會哦。如果還不懂可以追問我哦。呵呵。逗號表示式的特點不知道的話可以去書上查下。
2樓:風若遠去何人留
執行順序為:
1 a=2*3 結果a=6
2 i=(a=2*3,a*5)
也就是i=a*5=6*5=30
3 a+6
沒有實際意義 ,屬於干擾範圍.
所以結果i=30.
需要注意點為, 賦值運算優先順序高於逗號運算
3樓:左丘忠仙鶯
i=30a=6
a*5=30
那麼括號的值為30
i=30,a+6
因為賦值運算子優先順序大於逗號運算子所以i
=30再計算a+6
4樓:匿名使用者
執行順序:
a=2*3 a=6
a*5 30
賦值 i=30
逗號運算是一個多元運算,它的整個的值都是最後一個表示式的值,所以(a=2*3,a*5)運算後的結果是30,然後是賦值運算"i=" 因此是i值為30 後面的逗號運算就不用管了。
如果改成 i=((a=2*3,a*5),a+6); 的話,結果就應該是12,如果你還有什麼
不清楚地地方我們再討論~
已知int i,a;執行語句「i=(a=2*3,a*5),a+6;」後,變數 i 的值是( ) a 6 b 12 c 30 d 36
5樓:多xdl點事
30。這裡考察的是c語言中運算子的優先順序,先執行括號的程式,然後執行逗號運算子,先執行a=2*3,再執行a*5,取右運算元,然後賦值給i,就是30。
**如下:
#include
int main()
程式執行結果:
擴充套件資料c語言中,逗號運算子確保運算元被順序地處理:先計算左邊的運算元,再計算右邊的運算元。右運算元的型別和值作為整個表示式的結果。
左運算元只是為了***需要而被計算,它其值會被丟棄。逗號運算子的優先順序是所有運算子中最低的。
6樓:匿名使用者
這個應該是選c。已經給你執行了,截圖了。你看看。
原因如下:先執行a=2*3,a=6,然後再a*5=30,注意此時有一個括號,說明前面這個逗號表示式的值為30.後面再接著一個逗號表示式。
因為賦值符號 = 的優先順序比逗號的高,所以直接把30賦值給了i。
如果把這題的括號去掉的話,結果就是6了。同樣根據優先順序的方法,i直接就等於a=2*3了。但是如果把題換成i=(a=2*3,a*5,a+6);後,答案就是12了。
根據逗號表示式的特點,就可以得出答案。
這題主要考優先順序關係。要學好c語言,這個一定要會哦。如果還不懂可以追問我哦。呵呵。逗號表示式的特點不知道的話可以去書上查下。
7樓:匿名使用者
選c 30,這個結果i=30,a=6。像這種並列逗號什麼的,賦值是取第一個的。
8樓:
30 c
首先a=2*3=6 然後a*5 =30i=30
我執行過程式了 沒錯的 ^ _ ^
9樓:卡卡斬
逗號表示式,括號裡從左到右,而且a的值是傳遞的。故為30
10樓:匿名使用者
12,因為,運算子是從左到右呀6+6=12
已知int i,a;,執行語句i=(a=2*3,a*5),a+6;後,變數i的值是____這題好
11樓:匿名使用者
執行後, i 的值是30。這題不簡單,挺複雜的,屬於鑽牛尖的題。這裡主要考你對逗號表示式的理解,逗號表示式的值等於最後一個表示式的值,而且逗號是c語言中等級最低的運算子,像i=(a=2*3,a*5),a+6;這一句,先算出a=2*3,得到a=6,然後再算出a*5,得到表示式的值30(但這時a的值仍等於6),然後把30這個值賦給i,然後再算出a+6,得出12,最終整個表示式的值為12,但題目問的是i的值,就是30.
不知這樣你能不能理解。
設有語句 int a=3 ; 則執行了語句 a+ = a * a後,變數a 的值是( ) a、3 b、0 c、9 d、12
12樓:匿名使用者
賦值運算是從右到左的上面的語句運算順序是:a-=a*a;a+=a;計算第一個後a的值是-6,再計算第二個,a的值就是-12
13樓:日出日落三十天
d a=3+3*3=12
已知int i=1,a=2; ,執行語句i=(a*=3+4,a+5),a/6; 後,變數i和a的值是多少
14樓:仉珂展雁卉
先執行,a=a*7, a=14
然後執行 a+5, 這一句沒有賦值,所以a不變然後執行a/6=2, a值不變
至此逗號表示式執行完成,執行i=的賦值語句, i= a/6=2所以a=14, i=2
執行語句 for i 1 i4後,變數i的值是
z粽 是個後置的運算子 也就是說i 4這個條件中的i用的是自增運算前的值 再比如 int main 這樣的話,程式執行得到的顯示是 c 3 a 3 就是在計算c a b的時候a還是2的值 在語句執行完之後才進行自增哦 所以你那個語句裡,在最後不滿足i 4時,i其實是剛好等於4,迴圈執行完之後就變成5...
為什麼if語句執行後不執行if語句。if elseif巢狀語句是怎麼看的啊
妖搦天 首先,這種題要知道答案很簡單,自己把題目放到編譯軟體上執行一下就行,然後可以通過結果反推過程。這道題我編譯出來結果是2,以下是我的邏輯 首先,要知道else配對的是哪個if,這個配對方法很簡單,由於沒加括號,直接往上行找離它最近的沒配對的if就行。本題與else配對的是第二個if 其次,由於...
已知int x 1,y執行yx5x10語句後,x的值為多少呢?謝謝高人回答哦
首先要明白 x和x 的區別,x是變數x先進行自加,運算結果再參與運算,x 是x先參與運算,之後變數再自加,明白這個這個問題就不難了。之後再看表示式,y是一個boolean值,是兩個表示式 之後的結果,對 操作符來說,如果前面的表示式為真,再運算後面的表示式,兩者取與運算,如果前面的表示式為假,將不會...