c語言問題a表示式1,表示式2運算的過程如果是a(表示式1,表示式2)呢

2021-03-23 03:04:58 字數 3264 閱讀 7363

1樓:獨孤木人

在c語言中,多個表示式可以用逗號分開,其中用逗號分開的表示式的值分別結算,但整個表示式的值是最後一個表示式的值。

所以,第一個的結果是表示式1,第二個的結果是表示式2

逗號表示式c=(表示式1,表示式2)中,如果表示式1值為0,c的值是0還是表示式2的值?

2樓:育知同創教育

c語言提供一種特殊的運算子,逗號運算子,優先順序別最低,它將兩式聯接起來,如:(3+5,6+8)稱為逗號表示式,其求解過程先表示式1,後表示式2,整個表示式值是表示式2的值,所以c=表示式2的值

在c語言中,表示式a=1,a+=1,a+1,a++的值是

3樓:匿名使用者

2。表示式從左往右,結果是最後一個表示式的值。第二個a變成了2,最後一個先返回再自加,所以還是2

4樓:皚虎

a+=1等價於a=a+1

a++ 後加。本次用到使用當前值,使用完a的值自增1所以a=1,

a+=1, //a=2

a+1,

a++ // 本行等於2++(實際取2,但是沒有用到)下面再出現a時。a=3

對於條件表示式(邏輯判數值?表示式1:表示式2),它運算順序怎麼會是自右向左呢

5樓:匿名使用者

int a=5

system.out.println(a==5?1:0);

會輸出1;

如果a不等於5則會輸出0;

c語言中的 (表示式1)?(表示式2):(表示式3) 什麼意思?我給忘了~~拜託各位大神

6樓:夢

表示式1一般是判斷語句的,如果是true,則返回表示式2,否則返回表示式3 舉個列 (1>2)?1:2 因為1<2的,結果是false,所以返回表示式3, (1>0)?

2:2 因為1>0的,結果是true,所以返回表示式2

7樓:江公主殖矢

給你舉個例子 int x=3,y=4,max; max=x>y?x:y; 意思就是 如果x>y滿足 執行?後面的語句 也就是將x的值賦給max 否則 執行將:的值y賦給max

c語言中( 表示式1,表示式2 )是什麼意思

8樓:註冊步驟

它的意思就是執行表示式1和表示式2,但是表示式2的值作為整個括號運算的最終數值.

9樓:匿名使用者

(a,b),(a-b,b),(b,-b)的值都會是什麼啊?22-2( 表示式1,表示式2 )等於做表示式1的事情,做表示式2的事情,然後把表示式2的結果返回。

書上有說的,分別是","和"()"操作符。

現在的人真懶,連翻書都不願意。

c語言中a>b?表示式1:表示式2 請問下表示式1可否為多個?比如a=c+4,b=e+1,c=a+b;等

10樓:匿名使用者

理論上可以,逗號表示式,最後一個是實際的結果,當然本例中最後的c=c+4+e+1;

c語言中的 (表示式1)?(表示式2):(表示式3) 什麼意思?

11樓:李好

表示式1一般是判斷語句的,如果是true,則返回表示式2,否則返回表示式3。

舉個列 :(1>2)?1:2 ,因為1<2的,結果是false,所以返回表示式3, (1>0)?2:2, 因為1>0的,結果是true,所以返回表示式2。

如果表示式1 的值為真,那麼以表示式2 的值作為整個條件表示式的值,否則以表示式3 的值作為整個條件表示式的值。

c語言是一種計算機程式設計語言,它既具有高階語言的特點,又具有組合語言的特點。

它的應用範圍廣泛,具備很強的資料處理能力,不僅僅是在軟體開發上,而且各類科研都需要用到c語言,適於編寫系統軟體,三維,二維圖形和動畫,具體應用比如微控制器以及嵌入式系統開發。

c語言是一個有結構化程式設計、具有變數作用域(variable scope)以及遞迴功能的過程式語言。

c語言傳遞引數均是以值傳遞(pass by value),另外也可以傳遞指標(a pointer passed by value)。

c語言的優點是簡潔緊湊、靈活方便;運算子豐富;資料型別豐富;表達方式靈活實用;允許直接訪問實體地址,對硬體進行操作;生成目標**質量高,程式執行效率高;可移植性好和表達力強等。

c語言的缺點主要表現在資料的封裝性上,這一點使得c在資料的安全性上有很大缺陷,這也是c和c++的一大區別。

且c語言的語法限制不太嚴格,對變數的型別約束不嚴格,影響程式的安全性,對陣列下標越界不作檢查等。從應用的角度,c語言比其他高階語言較難掌握。

c語言 設a=1, b=2, c=3,d=4,則表示式a

12樓:甲說雜言

這個是c語言中的條件運算子(?:)它是對第一個表示式作真/假檢測,然後根據結果返回另外兩個表示式中的一個。

《表示式1>?《表示式2>:《表示式3>

在運算中,首先對第一個表示式進行檢驗,如果為真,則返回表示式2的值;如果為假,則返回表示式3的值。

你這個表示式中,a

13樓:匿名使用者

a=1, b=2, c=3,d=4,求:a果成立,則值為:a,如果不成立,則值為c現在a=1,b=2,a,所以結果就是a。

(2)因為a的值是1,所以結果就是:1

(3)如果不成立才計算c

14樓:windy一點硃砂

是先運算最右邊的。 ?:是條件表示式結合方向是從右向左,這是個三目運算子

即a我才是正解,專門扒拉出書來看的,答案是一樣的但是優先順序不一樣,我參考的書是c語言程式設計第三版 何欽銘,顏暉主編(p132p139)!!

15樓:滄海雄風

(a所以很明顯a就是返回 1   完了

16樓:匿名使用者

#include

int main()

else

{if(c

17樓:匿名使用者

從左往右看,因為a

所以返回1.

C語言 逗號表示式,c語言 逗號表示式

c b a a 1 b a b 根據運算子優先順序,等效於 c b a a 1 b a b 整體是逗號表示式,逗號表示式的值由最末項決定,即a b,前面的表示式沒有改變a和b的值,所以整個表示式的值是2 3,即5 intmain 結果 value 8 逗號表示式從左往右計算,但返回右邊的資料值作為表...

C語言程式設計求下面表示式的值,C語言 求表示式的值

這個太簡單了,你查一下優先順序,就知道了,古人云 授之以魚不如授之以漁。解題思路 首先你要明白運算 符優先順序的順序,其次你要明白型別之間的強制轉專換按照優先順序屬的順序首先計算 內的值,再強制轉換為int 也就是int 2.5 4.7 7 然後按運算子優先順序,先算乘除,因為是又目運算子所以由左級...

在c語言中表示式,在C語言中,表示式5 3 2 8 4 0的值為()。

1 正常思路 由於邏輯運算子優先順序別低於比較運算子同時這兩種都低於算術運算子,因此先考慮後半部分,4 0 真值為1,而8 1的真值為0.再考慮或左邊的表示式,5 3 2顯然真值為1最終結果為 1 0 當然結果為12 有 將表示式分成兩部分 左邊的是 5 3 2 顯然其真值為1 因此 1 任意 真值...