1樓:匿名使用者
y值是bai-16。
從左往右分解,y+=y-=m*=y 就是
du y=y+(y-=m*=y)
y-=m*=y 就是 y=y-(m*=y)
m*=y 就是 m=m*y
那麼就等於
m=m*y; //m=10, y=2
y=y-m; //m=10, y=-8
y=y+y; //m=10, y=-16
擴充套件資料zhi
:dao
由於字尾表示式不需考慮運算子的專優先順序,因屬此計算較簡單。計算過程為:從左到右依次掃瞄字尾表示式,遇到運算子,則與運算子前邊連續兩個運算元做運算。
由於遇到運算元時,不能立即進行計算,因此設立乙個棧(運算元棧),用於存放運算元。具體運算過程如下:
1、從左到右依次掃捕字尾表示式,每次取出乙個字元;
2、若字元是運算元,則入棧;
3、若字元是運算子,則連續出棧兩個運算元,計算它們的值,然後把運算結果入棧;
4、重複步驟1~3,直至表示式結束,棧中最後乙個元素即是字尾表示式的值。
2樓:匿名使用者
這種連線運算,其實很簡單的,運算順序知道了就ol!
運算順序由右向左,首先運算m*=y值為10,再執行 y-=10值為-8,最後執行y+=-8值為-16,就這麼簡單,希望能幫助你……
3樓:匿名使用者
選c,p[0]指向a[1],也就是&a[1][0],二維陣列在記憶體中的儲存方式和一維陣列一樣也是順序存放的,所以p[0]+1就是a[1][0]的下乙個元素
4樓:匿名使用者
大哥的問題真是稀奇古怪。按照運算次序,先做m*=y,得到m=10,再做y-=m,得到y=-8,再做y+=y,得到y=-16。
5樓:匿名使用者
#include
using namespace std;
__int64 hash[120][100000];
int main()
若有以下定義int x=3,y=2,則表示式y+=x–=y後的y值為
6樓:匿名使用者
y = y + (x-=y)
y = y + (x = x - y)
y = y + (x = 3 - 2) 此時,x = 1y = y + 1
y = 2 + 1
y等於3,x等於1
7樓:育知同創教育
一步一步來y+=x是5
5-=y是多少呢就出來了
答案是3。
若有定義intx3,y4,z,則表示式zyx
1 這就相當於乙個邏輯判斷式 左邊是乙個邏輯表示式 右邊也是 左右邏輯表示式的值均為1 1 1 所以為真 即1 定義 int x 3,y 4,z 5 則表示式 x y z 1 y z 2的值是 1首先 優先順序最高,故 x y 0,然後根據算術運算子的優先順序高於 繼續計算0 z 1 4,和y z ...
若有以下的定義和語句,則值為5的表示式是 int a1,2,3,4,5,6,7,8,9,
a是6b是a 5 6 c是a 4 5 d是a 6 7 說明語句如下 int a 10 1,2,3,4,5,6,7,8,9 p a 則數值為6的表示式是 d。表示式 p a 說明p指向a 0 的位置 那麼 p 6 a 0 6 7 a錯 p指向a 0 的位置,則p 6 指向a 6 的位置,那麼 p 6 ...
c語言若有定義語句int b2則表示式b《2b 的值是
我感覺這題答了以後 採納率又會下來。2 的二進位制形式 0010 b 2 1000 8 3 b 3 2 1 所以最後的表示式的值就是 8 至於你說的為什麼3 b 1.首先你得分清 與 運算。是按位或 就是你說的 011 010 後結果為 011 而在 的世界裡,只認兩個值 0 和 1。即真和假 所有...