1樓:匿名使用者
int x=1,y=3,z;則表示式 z=x>y?x-y:x+y 等同於z = a?b:c,如果a為真,則等於b,不為真則等於c
因為,x>y 1>3 為假,所以z=x+y=1+3=4
2樓:
答案是:4
x>y的邏輯值為假,則取冒號後面的值,所以把x+y的值賦值給z,而x+y等於4,所以z的值為4。
3樓:育知同創教育
int x=1,y=3,z;則表示式z=x>y?x-y:x+y的值為4
c語言:已有定義int x=3,y=4,z=5;則表示式 !(x+y)+z-1&&y+z/2的值是?
4樓:
答案是1。
涉及到的運算子: ! () + - && /運算子優先順序為:() ! / + - &&運算過程:
x=3,y=4,z=5
!(x+y)+z-1&&y+z/2
!(3+4)+5-1&&4+5/2
所以表示式計算步驟為
!(3+4)+5-1&&4+5/2 -> !7+5-1&&4+5/2!7為 0
-> 0+5-1&&4+5/2
5/2 整數除整數得整數 2
-> 0+5-1&&4+2
-> 4&&6
邏輯運算 &&
擴充套件資料c語言運算子的優先順序:
如果同一優先順序的運算子,結合次序由結合方向所決定。
5樓:匿名使用者
只是等於1的,我是經過turbo c2.0編譯過的,答案應該沒什麼問題的,程式是:
main()
答案為什麼會等於1呢?那是因為運算級別的問題,根據運算級別,實現算括號裡面的先,所以程式就變成!7+z-1&&y+z/2;
然後就算!運算,由於7是大於1的,也就是真,所以!真就是假,也就是0,所以函式就變成0+z-1&&y+z/2;
然後再算除號的,由於你這裡兩個都是整形的,所以小數點後面的數忽略,所以就變成0+z-1&&y+2;
接著計算加減運算,也就是變成4&&6;
因為4和6都是大於1的數,所以就是真,由於&&兩邊都是真的話,輸出的就是真,所以結果就是1。
要是還有什麼不明白的話,就mm我吧!嘻嘻~~~~~~
6樓:匿名使用者
1優先順序: 算數》條件》關係》賦值
關係中的優先順序: 非》與》或
7樓:匿名使用者
1,把運算子優先順序搞清楚就好了
8樓:匿名使用者
x等於y加4。四家外加1+3+5+4+1等於三五+4+5+1。
9樓:匿名使用者
!(3+4)+5-1&&4+5/2
=!7+4&&4+2
=!11&&6
所以說那個式子的值是:不是11並且是6
假設x=1,y=2,z=3,則表示式y+=z--/++x的值是多少?答案是3,怎麼算出來的?
10樓:dust雷諾
z--先返bai回z的值z再+1
++x先+1再返回x的值
然後du是符號的zhi優先順序
最先執行自dao加自減 然後執行相除專
最後執行 +=屬
所以x=x+1
y=y+z/x
z=z+1
x=1+1
y=2+3/2
z=43/2因為都是整型所以只返回整數部分的值所以等於1
11樓:匿名使用者
分解計算
這和復c的計算制邏輯有關,
z--先計算後賦值,在這個式子裡其值是3
++x先賦值後計算,所以是2
y+=3/2 等效於 y=2+(3/2)=2+1(如果x,y,z都是int變數)
話說你這個題坑還是挺多的。
其實你應該寫在c或者php裡分步執行下,觀察每個變數的值就明瞭了。
using system;
public class test}
12樓:東方之巍
隨楓落地zp wogenvyh
定義 int x 3,y 4,z 5則表示式 x y z 1 y z
c語言的優先順序 從上到下依次遞減 醋 初等,4個 指向結構體成員 結構體成員 壇 單目,9個 負號 型別 指標 取地址 sizeof長度 酸 算術,5個 減味 位移,2個 灌 關係,6個 等於 不等於 味 位邏,3個 按位與 按位異或 按位或 落 邏輯,2個 邏輯與 邏輯或 跳 條件,1個,三目 ...
c語言已有定義intx3y4z5則表示式
答案是1。涉及到的運算子 運算子優先順序為 運算過程 x 3,y 4,z 5 x y z 1 y z 2 3 4 5 1 4 5 2 所以表示式計算步驟為 3 4 5 1 4 5 2 7 5 1 4 5 2 7為 0 0 5 1 4 5 2 5 2 整數除整數得整數 2 0 5 1 4 2 4 6 ...
C語言intx2,y3,z4,則表示式xyz的值為
優先於 優先於 x y z 就是 x y z 那就是 0 3 4 結果是0 x 2,y 3 x y 5 5 4 成立 結果是1 int x 1,y 3,z 則表示式z x y?x y x y的值為多少 int x 1,y 3,z 則表示式 z x y?x y x y 等同於z a?b c,如果a為真...