1樓:匿名使用者
首先(x<=y)是一個邏輯表示式,如果邏輯正確,表示式為1,錯誤表示式為0.現在x=2,y=3,所以(x<=y)邏輯是對的,所以為1. 1+2結果就是3麼。
2樓:匿名使用者
(x<=y)+2
程式首先執行括號中的語句,則2<=3為真,轉化為數值即是1,1+2=3
3樓:匿名使用者
研究了下x<=y在這起的作用像bool型別的判斷作用,滿足這個條件就是真也就是1,不滿足的話就是假就是0
4樓:匿名使用者
int x=2,y=3; printf("%d,",(x<=y)+2);
(x<=y)==true=1
(x<=y)+2=1+2=3
int x=3,y=2;則表示式printf(「%d」,(x-=y,x*=y+8/5));的結果是什麼
5樓:
逗號運算子順序執行
x-=y x=3-2=1
x*=y+8/5 x=1*2+1=3
所以結果為3
int x=1,y=2; printf("%d",x+y,x++,y++); 為什麼得的值是5,而不是2或者3.
6樓:匿名使用者
pirntf函式中的表示式的結合順序是由右向左,所以先算y++,再算x++,最後算x+y,因為只有一個%d,所以輸出對應的x+y的值為5
7樓:百劫度厄
標準c編譯器的話,應該是3,x++、y++是在所在語句執行完後再+1的,
即使是printf("%d",x+y,++x,++y);結果也為3,因為執行順序是從左至右,運算x+y時,xy還沒自加
不知道你用的什麼編譯器,是哪種c
8樓:
這可不一定是5,通常是3。請看:
9樓:匿名使用者
這個主要看編譯器編譯順序的問題
你看下這個問題就明白了
10樓:匿名使用者
vc++6.0執行結果是3
以前回答過這樣一個帖子,有空的話去看下。
11樓:
x和y都自增以後再相加的
12樓:匿名使用者
你是用tc編譯器吧。tc是5. vc是3
main() { int x=1,y=2,z=3; x+=y+=z; printf("%d",(x
13樓:匿名使用者
嗯,可以先抄看看要求輸出什麼襲
printf("%d",(x這是一個條件表示式,判斷x假就取y++x=1,y=2,z=3
x+=y+=z 是自右運算的,y=y+z=5 此時y=5x+=y x=x+y=1+5=6
然後判斷xy 所以條件是假值,取y++
這裡注意一下,要求輸出的是y 不是y的值
所以最後結果是5 但如果要求輸出y y的值就是6
14樓:難得當歌對酒時
x+=y+=z 等價於 y=y+z; x=x+y; 故此bai後 z=3,y=5,x=y;
故 x,故整個du條件表達
zhi式的值dao就是專 : 之後的子表示式的值,也即 y++ 表示式的值,後屬綴++表示式返回++之前的值,故輸出5
main {int x=1,y=2,z=3; z+=x>y?++x;++y; printf("%d",z); } 此程式的執行結果??
15樓:匿名使用者
執行結果為6
z+=x>y?++x;++y;
先處du理表達zhi式:
daox>y?++x;++y
由於x=1,y=2,所
以版x>y為假,表示式的值權等於++y,
由於y=2,所以++y等於3,所以表示式:x>y?++x;++y的值等於3
z+=x>y?++x;++y;轉化為z+=3;,也就是z=z+3,由於z=3,所以z=z+3=3+3=6
16樓:
1 程式來先改正:
void main() //本行少源()2 執行結果:dao6
17樓:匿名使用者
答案:6
int x=1,y=2,z=3;
z+=x>y?++x:++y; //中間冒號//先比較x>y? 為真,返回版++x,否則返回++y。
z += ++y;
++y先執行
權y+1,y = 3
z +=3 ====》 z = z + 3 = 6
定義 int x 3,y 4,z 5則表示式 x y z 1 y z
仍易闕鈴 c語言的優先順序 從上到下依次遞減 醋 初等,4個 指向結構體成員 結構體成員 壇 單目,9個 負號 型別 指標 取地址 sizeof長度 酸 算術,5個 減味 位移,2個 灌 關係,6個 等於 不等於 味 位邏,3個 按位與 按位異或 按位或 落 邏輯,2個 邏輯與 邏輯或 跳 條件,1...
已有定義 int x 3,y 4,z 5,則表示式 x
你這個是c語言吧。你可以看看布林值其他型別的轉換規則。表示式 x y z 1 y z 2的值只可能是0和1,也就是假和真。這裡是表示式條件滿足,所以是1。x y z 1和y z 2分別判斷是0還是1,然後再進行邏輯與 運算。c語言當中,整數轉布林值的時候是非0轉1,0轉0吧。按這個規則來的。x y ...
c語言如果有定義變數int x 3,y 4,z 4則表示式 zyx 1 0的值為什麼
z y x 1 0 判斷z y x的值,如果為1,則值為1,否則為0從左到右運算 z y即4 4,結果為1 true 然後1 x,即1 3,結果為0 false 所以表示式的值為0 z y x 1 0 這是個條件表示式,z y x 括號裡面是個複合關係表示式,先比較z y,表示式為真,而在內c語言中...