int x 1,y 2 printfd n ,1 0 x y結果為什麼為0啊

2021-04-19 19:01:02 字數 2174 閱讀 9933

1樓:匿名使用者

當然是0了啊 printf("%d\n",1.0+x/y); 因為後面1.0加上x/y(0)的結果是浮點型 沒有匹配前面的%d。只有x/y匹配 所以是0

int x=1,y=2; printf("%d",x+y,x++,y++); 為什麼得的值是5,而不是2或者3.

2樓:匿名使用者

pirntf函式中的表示式的結合順序是由右向左,所以先算y++,再算x++,最後算x+y,因為只有一個%d,所以輸出對應的x+y的值為5

3樓:百劫度厄

標準c編譯器的話,應該是3,x++、y++是在所在語句執行完後再+1的,

即使是printf("%d",x+y,++x,++y);結果也為3,因為執行順序是從左至右,運算x+y時,xy還沒自加

不知道你用的什麼編譯器,是哪種c

4樓:

這可不一定是5,通常是3。請看:

5樓:匿名使用者

這個主要看編譯器編譯順序的問題

你看下這個問題就明白了

6樓:匿名使用者

vc++6.0執行結果是3

以前回答過這樣一個帖子,有空的話去看下。

7樓:

x和y都自增以後再相加的

8樓:匿名使用者

你是用tc編譯器吧。tc是5. vc是3

int x=-1,y=1;printf("%d,%d\n",x+y++,y);的結果是多少?

9樓:匿名使用者

不可能呀,我也除錯了一遍,就是0,2,這個答案應該是肯定的,可能是你的c語言編輯器有問題吧,你在找個別的試試看,會不會出錯

10樓:3問全不知

這個不怪你的,你用vc吧!!用tc就知道了

11樓:孤舟釣客

我用vs2010除錯了一下是0, 2啊。。。

main {int x=1,y=2,z=3; z+=x>y?++x;++y; printf("%d",z); } 此程式的執行結果??

12樓:匿名使用者

執行結果為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

13樓:

1 程式來先改正:

void main() //本行少源()2 執行結果:dao6

14樓:匿名使用者

答案: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

#include main() {int x=1,y=2,z=0; if(x=2) z=x,x=y,y=z; printf("%d,%d\n",x,y); }

15樓:匿名使用者

我來給bai你詳細說說:du(++x,y++),這是逗號表示式,先執行++x,然zhi後執行y++;結果取逗號dao後面表示式的回值,也就是答y++的值。y++的值為3,因為這是後加表示式,如果是前加++y的話,值就是4;z+2的值是1+2=3;所以結果輸出是33

16樓:匿名使用者

if(x=2)對x賦值2 並且邏輯判斷為真  z=x z=2 ......

17樓:匿名使用者

咋了???????????????

JAVA問題 int x 1,y 2,z 3則語句y zx的值是

x 2,y 3,z 2 月亮望見了copy 小魚的結果正確,過bai程分析不對。woniu157的結果就du錯了。都是因為 和zhi 這兩個運算dao 符。遞增和遞減運算子出現在變數的前面和後面時優先順序是不一樣的。出現在變數前時,優先順序最高要先算遞增 遞減的值,再參與其他運算子號的操作。出現在變...

設有變數定義「intx 1,y 2,z 3計算下列表示式的值

1 這個是要求什麼表示式的值呢?後面的除2 2 完全沒有作用啊,執行後x 2,因為x是整型 若是x float y 0.5 2,執行後x 1 2 逗號 運算子求職順序為自左至右,所以,執行 x,y 後x 0,y 3,z 3,然後求得最右邊x y z 6並將此結果賦給z 3 等號 運算子結合方向為自右...

設有宣告int x 1,y 2,z 3下面表示式的值為0的有()A x《z B z》2 C y y D x yE z y x為什麼

完整bai的是bcde b 右移2位,du相當於除以4,3 4 因為是zhiint型別的,所dao以等於0 c 異或操作 y y 相同專等屬於0d 1 2 等於0 10 01 00e 1 2 3 等於0 00 1100 應該是d e a左移2,相對於 1 2,b右移2,相對於3 2,c異或時還是y ...