有定義int a 3,b 4,c 5執行完表示式ab bcc後,a,b,c的值分別為怎麼來的

2021-04-19 19:47:00 字數 1588 閱讀 7234

1樓:匿名使用者

a++>--b是取a加1前的值3和b減1後的值3比大小,結果是假,所以&&的最終結果肯定是假,後面的執行都不繼續算了。所以a=4,b=3

2樓:匿名使用者

你要清楚&&的意思!它意味著「並且」。如果a++>--b不成立,則你就不用進行下面的運算了!a=3+1;b=4-1+1;c=5-1;結果就在這了!!

3樓:匿名使用者

a = 3,a++ = 3,先使用a,然後a自增

b = 4,--b = 3,b++ = 4

c = 5,c-- = 5,先使用c然後c自減,++c = 6

有定義int a=3,b=4,c=5;執行完表示式a++>--b&&b++>c--&&++c後,為

4樓:愛是一責任

++ --道理你應bai該知道就不說了

除了+-這題du唯一zhi唯一障眼法就是

dao一條語句全部是內&&,&&,那麼第一個判斷時容錯了也就不在執行後面的判斷式,

所以這裡a++>--b就是3>3嗎?明顯為假,就不在執行後面的,除非後面有||

設int a=5,b=6,表示式(++a==b--)?++a:--b的值是

5樓:匿名使用者

結果為bai7。

條件表示式

du為:表

zhi達式1?表示式2:表示式3。先求解dao表示式內1,若其值為真(非容0)則將表示式2的值作為整個表示式的取值,否則(表示式1的值為0)將表示式3的值作為整個表示式的取值。

先判斷++a==b--是否為真,++a表達的值為6,b--表達的值為6,兩者相等,為真。則將表示式++a的值作為整個表示式的取值,因為在此之前a的值已經自增變成6,再進行++a表示式的值為7。

6樓:匿名使用者

最後值為7,這是一個if語句,就是

int a=5,b=6;

if(++a==b--) ++a;

else --b;

++ar的規則

是先運算,所以括號中左值++a=6,a=6;

==的優先順序低版過--,所以先計算權b--b--的規則是先賦值,所以括號中右值b--=6,b=5;

左值6==右值6,即條件為真,執行++a,因為a值已是6, 所以加1操作後,

結果為 7

7樓:烏石

7,條件表示式條件為真,取值為++a;原來為6,執行++a後為7

設"int a=3,b=4,c=5;",表示式"(a+b)>c&&b==c"的值是 。

8樓:科技鳥

是一個邏輯判斷式子,就是判斷a+b)>c和b==c是否同時成立,成立就返版回1,不成立就返回0;

如下可以輸出這權個判斷的結果:

#include

void main()

{ int a=3,b=4,c=5;

cout<<((a+b)>c&&b==c)

有變數定義inta3,b4,c5表示式abc

答案是 1 由符號優先順序知,先計算a b不成立為0,0 c成立結果就是1 設int a 5,b 6,表示式 a b a b的值是 結果為bai7。條件表示式 du為 表 zhi達式1?表示式2 表示式3。先求解dao表示式內1,若其值為真 非容0 則將表示式2的值作為整個表示式的取值,否則 表示式...

設有語句int a 3,b 4c 5則表示式

1和1對於bai a b c 1 b c 2 前後接兩個表du達式zhi,一個 是 a b c 1,另dao一個是b c 2 第一版個表示式結果為c 1即2 因為 a b 非0,故 a b 結果為0 第二個表示式結果為6,所以這兩個表示式均為非權零,所以它們進行邏輯與操作之後的結果為1 對於a b ...

若有定義int a 1,b 2,c 3則執行表示式(a b cb)後a,b,c的值

1。b c 5 將 5 賦值 給 a 2.a 5 為真 短路或所以不執行 b b 依然為2 所以 有 a 5 b 2 c 3 從左往右看,a b c a 5,b,b 3 若有定義 int a,b 則表示式 a 2,b 5,a 2,b a b 的值是?b 的意思是 先將b的原值帶入本條語句執行,然後再...