1樓:匿名使用者
if(a>b,b>c,c>d)
逗號表示式與加減乘除本質上是一樣的, 它的求值是從左向右依次對表示式求值, 整個表示式的結果取逗號表示式中最後一個表達的的結果, 如果非零, 就會使 if 成立!
依照上面的理論
c=(a-=a-5),(a=b,b+3)的執行順序是這樣的:
1、首先分兩塊,逗號前面的是第一塊,先執行,逗號後面的是第二塊,後執行;
2、兩個塊中,括號裡的先執行
3、a -= a-5; //執行前, a=0, 執行後, a -= -5, a = 5;
c = a; //c = 5;
a = b; // a = b = 0;
b + 3; //執行,但是不修改任何數字所以,最後結果是: 0, 0, 5
2樓:莎莎
b+3 ;//=3 b=0
a=b ;//a=0 b=0
a-=a-5 ;//a-5 = -5 a-=(-5) = 5 a=5c=逗號表示式的值,逗號表示式的值為最後一個表示式的值c=(a-=a-5),(a=b,b+3)的這個逗號表示式的值就是(a=b,b+3)的值是(b+3)b=0則b+3=3
所以整個表示式的值為3,則c=3
輸出為:
5,0,3以上
若有以下程式段:int a=0,b=0,c=0 c=(a-=a-5),(a=b,b+3); printf(「%d,%d,%d\n」,a,b,c);
3樓:匿名使用者
大哥題都不對。
int a=0,b=0,c=0;
c=(a-=a-5),(a=b,b+3);
printf(「%d,%d,%d\n」,a,b,c);
按程式執行來講吧。
第一內句不說了容...
第二句為逗號表示式。
c=(a-=a-5)
給c賦值,把a-=a-5的結果賦給c;
(a-=a-5)=(a=a-(a-5));
把a=0;代入得a=5;
進而(a-=a-5)的值為5;
c=5;
接下來執行(a=b,b+3);
這裡面又有逗號表示式。
a=b;因b=0;故a=0;
b+3;不對任何變數賦值,相當於空語句;
綜上所述:a=0;b=0;c=5.
論述完畢.....................
4樓:碧溪精靈
……首先copy
a=0,b=0,c=0;
接下來c=(a-=a-5);
這句很bai噁心……分開看
a-=a-5;
轉換為 a=a-(a-5);
=a-a+5
=5結果du變成了 a=5;
整體就zhi
成了 c=(a=5);
此時 a=5,b=0,c=5;
然後是dao a=b;
因為b=0,
所以此時 a=b=0;
接下來 b+3;
等同於寫了個 0+3 ;
這句沒有給b賦值,b還是0,
可以說這句完全沒有意義!!
(如果寫成 b+=3,或者b=b+3,或者b=3;的話,b就是3了……可惜這段程式沒這樣寫……b還是0)所以最後 a=b=0 ,c=5;
程式設計 關於下題:int a=0,b=0,c=0. c=(a-=a-5),(a=b,b+3) printf (%d%d%d\n,a,b,c) 則輸出的結果是?
5樓:公良雪眭妍
c=(a-=a-5),(a=b,b+3);
首先執行a-=a-5,此時a為5,然後c=(a-=a-5),故c為5然後執行a=b,故a為0
所以程式片段執行結果為005(已在visualstudio下驗證)
如果我的答案對您有幫助,請點選下面的「採納答案」按鈕,送咱一朵小紅花鼓勵下吧!
祝您生活愉快!謝謝!如有不懂,可繼續追問!
程式設計 關於下題:int a=0,b=0,c=0. c=(a-=a-5),(a=b,b+3) printf (%d%d%d\n,a,b,c) 則輸出的結果是?
6樓:牧紫安瑞允
c=(a-=a-5),(a=b,b+3);
首先執行a-=a-5,此時a為5,然後c=(a-=a-5),故c為5然後執行a=b,故a為0
所以程式片段執行結果為005(已在visualstudio下驗證)
如果我的答案對您有幫助,請點選下面的「採納答案」按鈕,送咱一朵小紅花鼓勵下吧!
祝您生活愉快!謝謝!如有不懂,可繼續追問!
已知a0,b0,c0,求證 1 a b b c c a8abc 2 a
1 a b a b 2 ab 2 ab a b 2 ab a b 0 a b 2 ab 同理a c 2 ac b c 2 bc a b b c c a 2 ab 2 ac 2 bc 8abc 2 a b b c c a 3 令a b p 3,b c q 3,c a r 3 a b b c c a p...
C語言中。inta1,b0,c1執行語句bac後,a,b,c
或運算,而且是左結合,b為真,整個表示式就為真了,不再繼續運算,也就是 a和 c沒有運算,表示式的結果就出來了。後首先根據運算子優先順序和結合性。b a c 然後先算 b,此時 b 1,為true,於是不需要專算 後的內容了。屬 因為 true 任意表示式 true。注意,運算子優先順序不代表計算優...
C語言中,int a 3,b 0a a b a中, a具體定義是什麼 為什麼得出來是
是非運算,參與 運算的量是真,結果為假 參與運算的量為假,結果為真c語言版規定 1為真,0為假 但對於變數,權非零即為真,0為假 所以 a 3 a表示假 a a b a 這個整體是與運算,有一個為假 整個結果就為假 在c語言中是邏輯非的意思,即為0或者是非0,題中a 3,所以 a就是0了 c語言裡i...