int x 10,y 9 int a,b,c axyxyb xc y求a,b,c答案10,9,11要分析過程!誰幫

2021-03-27 14:18:38 字數 3388 閱讀 7125

1樓:狂一戶

你這題應該是(x--==y++)吧?

我照這個算

(x--==y++)相當於(x==y,x-1,y+1)後自減(加)相當於先對值進行操作(如附值或象for語句)然後再進行減(加)1。所以上面的語句先x和y進行比較,然後各自減1和加1。這個過程後x=9,y=10。

因為x和y不等,所以a=y++。這個式子相當於a=y,y+1(該懂了吧)。這個過後a=10,y=11。

然後b=x++,相當於b=x,x+1。這個過後b=9,x=10。然後c=11。

手機打的……累啊

2樓:匿名使用者

++表示自加,--表示自減

。++在前面的(比如x=++a)a先自加,再賦值給x;++再後面的則先 賦值,再自加。--同理。

a= (x- -=y++)?x- -:y++; 是一個三目預算,意思是如果?前面的等式(也就是(x- -=y++))成立,則a=x--;如果不成立,則選a=y++。

a= (x- -=y++)?x- -:y++; 首先判斷x- -=y++是否成立,--和++都是在後面的,所以判斷x=y(注意判斷玩之後還要做x--和y++);不成立,則a=y++;也就是先賦值a=y=10(因為前面已經做過一次y++);在做y++,y=11;

b=x++,先賦值b=x=9(因為前面已經做過一次x--),在做x++,x=10

c=y=11(前面得出)

3樓:匿名使用者

a=(x--=y++)?x--:y++;

挺複雜的

分解一下

首先變成:

if(x--=y++)

a=x--;

else a=y++;

再分解一下

x--=y++;

if(x!=0)

else

將x--=y++分解

x=y;

y++;

x--;

b=x++;

分解為b=x;

x++;

c=y;

4樓:匿名使用者

題目是不是有問題(x- -=y++)?x- -:y++; 確定是這樣的?

如果是比較的話應該是a>b?a:b 你的題目怎麼中間是等號啊 不懂事什麼意思

#include int main() { int x=10,y=9,a,b,c; a=(--x==y++)?--x:++y; b=x++; c=y; printf("a=

5樓:阿冬

--x //x變為9

--x==y //表示式結果為真,即為1y++ //y變為10

問號之前結果為真,執行--x,x變為8,所以a=8b等於x++執行之前的值,即b=8,然後x變為9c等於y,即c=10

求解。變數a,b,c的值分別是?int x=10,y=9; int a,b,c; a =(- -x = = y++)?- -x:++y ; b = x ++; c = y;

6樓:草柏渡

首先你這程式有錯誤的判斷--x=y++就好。

在前面++或就--就是先++或--再用數;在後面就先就是先用數在++或--

所以--x=y++是對的。所以a=--x;所以a=8的(經過兩個--)。

b=x++;先賦給b再++。所以b=8.x為9.

c等於y。y等於10.(:++y)是沒有執行到的。

main() { int x=4,y=3; int a,b,c; a=(--x==y++)?--x:++y; b=x++; c=y;} } 為什麼輸出答案是2 2 4

7樓:也許的貓

根據運算子優先順序,a=(--x==y++)?--x:++y等價於a=(((--x)==(y++)))?

(--x):++y,首先判斷x=x-1與y值的是否相等,y+1,若相等,則a=--x(--x先x=x-1,然後用於計算)。此時,x=2,y=4。

a=2b=x++,將x的值賦給b,然後x=x+1,所以b=2,x=3.

c=y,所以c=4。

在寫**的時候,最好將表示式中的不同優先順序的計算用括號括起來,這樣就不用為優先順序問題而煩惱了。

8樓:匿名使用者

是求abc吧?電腦上也說不清楚,自己多看書吧,很基礎的,應該是符號的優先順序問題

按照輸出格式寫出以下程式的執行結果 main() { int a,b,c; int x=8,y=10; a=(++x==--y) ? --x:++y;

9樓:天天老肥

++在資料前,bai則在相關運算

du之前進行++。++在數zhi據後,則在dao相關運算後進行++。內

a = (++x==--y)?--x:++y;

先對x加1,再對y加1. 然後判容斷x等於y嗎? 若等於, 對x減1,然後將x賦值給a。若不等於,對y加1,然後將y賦值給a。

b=x++;

將x賦值給b,然後對x++。

c = ++y;

先將y加1,再將y賦值給c。

10樓:

夠詳細了吧bai,不懂再問du

……#include "stdio.h"

int main()

11樓:匿名使用者

int a,b,c;

duint x=8,y=10;

a = ( ++x == --y ) ? --x:++y;

// ++x==--y是先將x遞增,zhiy遞減再將x,y比較。

dao// x遞增,y遞減後,x = 9, y = 9。

// 所以判斷結果為回false。

// 所以a==--x。因為答此時x已經遞增為9了,// 而這道式子是x先遞減再賦給a,x=8// 所以a=7。

b=x++;

// x先賦值再遞增。此時x = 8。所以b = 8。

c=++y;

// y先遞增再賦值給c。所以c=10。

// 綜上所述,輸出結果為:a=7,b=8,c=10

12樓:匿名使用者

b=x++;// b=x; x++;

c=++y;// y++; c=y;給分

13樓:匿名使用者

=的優先順序高於,

如果要想是y為十,,,可以這樣改

y=((x=a+b),(b+c));

已知x,y滿足(2x 3y 1 的平方 4x 9y 0 求x,y的值

根據絕對值和平房都大於等於0 2x 3y 1 0 4x 9y 8 0 解得x 1 2 y 2 3 運算過程 因為 2x 3y 1 的平方 0,且 4x 9y 8 0,而 2x 3y 1 的平方 4x 9y 8 0。所以 2x 3y 1 的平方 0,且 4x 9y 8 0.即2x 3y 1 0,且 4...

93年9月10號上午9點40出生在湖南,求算上升星座,月亮星座,金星和解析。謝謝

生辰八字要附帶名字才能算得準,不然同時間出生的人多了去了,難道都一個命運?還有生辰八字不要隨意釋出到網上,會被壞人利用改你的命.想知道的話給我私信,我有時間幫你算一算.對了,還需要性別,不需要出生地.我1993年,9月4日,10 40出生,上升星座是什麼啊 上升星座在天蠍座。你的性格屬於陰柔型,意志...

求高人指點,2023年,農曆10月14,晚上9點生,五行缺什麼,是怎樣的命格,名為珺瑤,是否犯衝

2000年,農曆10月14,晚上9點生 生辰八字 庚辰年 丁亥月 辛未日 己亥時 五行缺木,八字比較平衡,八字喜金,取名字要五行屬金的字比較好,缺木不用管。珺字五行屬木,瑤字五行屬火,火克金,所以取名字 珺瑤 很不好。女孩子?姓什麼?庚辰,丁亥,辛未,已亥此命缺丙火,用壬而無丙火用丁而溫應是武職之貴...