int a 0,b 0,c 0 c a a 5a b,b 3 printfd,d,d n ,a,b,c 執行過程是怎麼的 詳細些

2022-05-08 12:02:18 字數 2338 閱讀 2753

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...