1樓:匿名使用者
a=1,b=0,c=0
當執行++a||++b&&++c的時候,判斷++a,先給a加1變為1,判斷++a為true,讀取邏輯運算子為「或」則停止後面的判斷
2樓:匿名使用者
a=1;b=0;c=0,因為++a為真,後邊的不執行!
3樓:匿名使用者
a = 1
b = 0
因為 或運算中的 a 為真, 所以不執行後邊的表達試了
大學c語言問題 執行「int a,b,c;a=b=c=1;--b&&++c||++a;"後,變數a
4樓:我才是淡淡
|,首先你要把整個結構弄清楚,&&的優先順序高於||,所以上面的式子等價於(--b&&++c)||(++a),
先看(--b&&++c),--b導致b的值為0,所以(--b&&++c)必然為假,所以c就不會加一了,c的值還是1。然後(--b&&++c)為假並不能直接斷定(--b&&++c)||(++a)的真假,因為||需要兩邊為假才是假,所以需要判斷右邊的(++a),這裡a自加一次變為2,(++a)為真,整個表示式(--b&&++c)||(++a)的值為真。最後a,b,c的值分別是2,0,1
5樓:
你的**是順序結構;
所以執行的時候是先對a進行賦值,也就是a=1;
至於後面對b和c的運算,並不能改變a的值。
第一步 int a,b,c;
第二步 a=b=c=1;
第三步 --b&&++c||++a;//這個地方只有++a能改變啊的值 b和c對a的值不影響
第四步輸出a的值;
6樓:益達是誰
這判斷式a,b,c應該是2-0-2啊,怎麼是201,還有我想問這式子對嗎
7樓:匿名使用者
答案應該是2 1 1
int a=2,b=0,c=0;執行語句c+=b&&a--後a的結果為?c的結果為?
8樓:
#include
int main()
執行結果為:
a=2c=0
分析如抄下:襲
因為c+=b的邏輯值為0,那麼不管a--是真還bai是假du,整個表示式的值都是zhi假,而c語言的dao處理是直接略過a--了,即不執行a--操作了,所以a的值輸出還是2。
c語言,若有定義:int a=1,b=2,c=3;則語句++a||++b&&++c;執行後b的值為
9樓:
優先順序 ++ > && > ||
可以看成++a || (++b && ++c),因為++a已經==2 > 0 因此,後面不再計算。
即a = 2, b= 2 ,c =3
已知abc不等於0,且abc0,求a
a 1 b 1 c b 1 c 1 a c 1 a 1 b a c b a b c b c a a c b 1 a b c 1 b c a 1 3 a c b b a b c c b c a a 3 0 0 0 3 3 a 1 b 1 c b 1 a 1 c c 1 a 1 b a b c b c ...
已知a》0b》0c》0且abc1求證1abc
前面兩個都不對,有點兒難。令a 1 a,b 1 b,c 1 c a 0,b 0,c 0 則abc 1 abc 1 1 a 1 b 1 c 3 a b c a b c 3 1 a 1 b 1 c a b c 3 abc bc ac ab a b c 3 ab bc ac a b c 2 a 2 b 2...
已知a b c ab bc ca 0,求證a b c
證明bai a b c ab bc ca 0 兩邊同時乘以2得du zhi2a 2b 2c 2ab 2bc 2ca 0即 dao a 2ab b b 2bc c c 2ca a 0 a b b c c a 0 任何實數 內的平方都大容於等於0 a b 0,b c 0,c a 0 a b,b c,c ...