寫出與 a b 等價的C語言表示式?

2025-07-27 03:31:18 字數 3459 閱讀 5021

1樓:我能來問問嗎

你沒有考慮c語言運算子的優先順序,()是1級運算子,!是2級運算子,<=是6級運算子,||是12級運算子,所以,在()運算完之後是運算「!a」而不是「!

a<=b)」。希望可以給各位帶來幫助。

2樓:網友

你自己讀讀題:不是a小於等於b(或a不小於等於b)——那條件不就是a大於b嗎,還能有啥情況?!

3樓:網友

我認為答案錯了!答案可能是假定了a>b,但是結果卻不對。

相同表示式:a>b ; a<=b)?0:1 ; a目前就能想到這麼多,希望對你理解有所幫助!

4樓:網友

答案錯了唄。

正確答案是a>b

5樓:網友

你在**看的答案·我怎麼覺得是。

與!(a<=b)等價的表示式就是a>b

請寫出與!(a<=b)等價的c語言表示式: 詳細解答一下啊,謝謝

6樓:

與!(a<=b)等價的c語言表示式是a>b。

7樓:網友

非運算是從右向左算的!

所以這個表示式先考慮a<=b,這是一種情況然後考慮非a<=b,也就是a>b這是第二種情況綜合起來就是你所說的答案了!希望能有所幫助!

8樓:慕容琦萱

a>b在!(a<=b)中,,歎號是「非」的意思,由於括號的優先順序要高於非,所以a<=b的非為a>b

9樓:火星人在奔跑

a>b 原因:如果a<=b為真,則a>b為假(a<=b的反命題),容易知道!(a<=b)為假,故等價。

10樓:匿名使用者

可以等價為c中的 三目運算子 "a<=b ? 0 : 1;" 首先判斷a<=b是否為真,如果為真就返回1,又因為有「!

非,即取反,則最終「!1」就將 1 變成了0;如果a<=b為假則返回0,最後取非變成1

效果和上面的三目運算子一樣:當a<=b 為真時返回 0 ,為假時返回 1

11樓:

不就是a>b 麼?

這問題還有什麼高階含義啊?

對數學式a*b/c,寫出兩個等價的c語言表示式

12樓:網友

這個就這樣看了。 就是等價的啊,這個屬於中學的數學了。個人覺得學c不要被c嚇住了,數學在c中還是數學,只不過我們表達乙個數學算式的時候要用c的語法,用c的形式。

13樓:放眼新科技

在數學中、 a*b/c = a/c*b = b/c*a 這個是相等的、交換律啊(自己帶數進去算也可以啊)

因為 乘除法、在c中、 是從左往右依次計算的、 所以 、

a*b/c = a/c*b = b/c*a

14樓:住山洞的野人

乘除法是左結合雙目運算,就是從左往右算的,可以用交換律看看,這三個都是一樣的。

15樓:網友

因為算術運算子都是。

左結合也就是自左向右運算。

先除先乘都一樣!

故等價!

c語言中 !(a==b) 與 (a>b)&&(a

16樓:匿名使用者

不等價,(a==b)若且唯若ab的值相等是才為假。

而(a>b)&&a

c語言a!=b與等價a=a!b嗎?

17樓:網友

不等價。而且你是學混了。。a += b與a = a + b等價(其實內部機制中有不一樣的地方,初學不用考慮),a!

b 是乙個布林表示式,返回true或false,c語言預設用0表示false,1(或其他非0值)表示true,所以這個表示式只是返回了0或1而已(c語言使用布林需要標頭檔案)。

沒有a=a!b這個表示式,!不是運算子,只是布林層次上的取反而已。

關於c語言二級的題目:為什麼!(a<=b)等價於(a<=b)||(a>b)

18樓:網友

這個有問題吧。

a<=b)等價於a > b啊。

你看後面這個表達是:(a<=b)||a>b)這個表示式明顯肯定為true啊。a要麼<=b,要麼》b,還有其他情況嗎?這一或運算,結果肯定位true。

19樓:煙火夜空

不等價,a<=b ||a>b,不論 a 跟 b 是什麼數,結果永遠成立。

而 !(a<=b) 只有在 a>b 的時候才能成立,所以,題目不能 等價!

20樓:嚮往肌肉

#include

void main()

結果為1,#include

void main()

結果為0;事實證明,題目是錯誤的。

21樓:

等價麼?

等價於a>b 才對。

22樓:網友

不等價,你是不是把題目再提全一點 再看看。

若x為int型別,請以最簡單的形式寫出與邏輯表示式「!x」等價的c語言關係表示式( )。

23樓:網友

x==0。

」(邏輯非)邏輯運算子,「邏輯非」就是指本來值的反值。! a,not(邏輯非),結果為true,如果 a 不為true。

用關係運算子將兩個表示式連線起來的式子,稱關係表示式。

關係表示式的值是邏輯值「真」或「假」。但是c語言沒有邏輯型變數和邏輯型常量,也沒有專門的邏輯值,故以「非0」代表「真」,以「0」代表「假」。在關係表示式求解時,以「1」代表「真」,以「0」代表假。

當關系表示式成立時,表示式的值為1,否則表示式的值為0。

24樓:網友

!即為非的意思,就是如果x = 真,那麼!x 就為假,反過來若 x = 假,則!x為真。

而在c 語言中表示式0為假,不是0的全為真,所以對應的關係表示式為x == 0; 即只有當x == 0時才為真(對應等式成立),其餘均為假(對應等式不成立)

樓下的,關係表示式只有六種: >= , = , = , = =

你用的是三目運算子(條件運算子,不是條件表示式)。。

25樓:冰清翔龍

答案是:x == 0

是非的運算,非真就是假,也就是說非1就是0,非0就是1

x == 0 當x為0,返回1,x不為0,返回0

26樓:網友

x非0取0,x為0取一。

給你幾個答案吧,位運算比邏輯運算快。

x==0x~(x ^ 0x00000000)

x?0:1

C語言中表示式105的值是,C語言表示式105的值是

關係運算子 運算順序自左往右,所以1 0 為0,0 5為1。所以表示式的值為1。根據運算子表,是從左往右結合的。先看1 0是假,返回0。原式就變成 0 5,是真,返回1 所以結果就是 1。值是1,1 0為假 值為0 0 5為真 值為1 c語言 表示式1 0 5的值是 是1。根據c語言運算規則,檢查左...

ij和ij哪個是正確的c語言表示式

它等價於 表示式 i j 執行完畢再 分別執行 i 自增 1,和 j 自增 1.i j 是不正確的內表示式,因為 它被理解成容 i j 而 只能用於左值。如果 表示式 寫成 i j 那麼是正確的,先執行 i 自增 1,和 j 自增 1,然後成為 表示式 i j i j 正確。c語言中i 和j 分別是...

c語言表示式3512的計算結果是35為什麼

這是因為表示式1 2的結果為0 整型0 因此表示式3.5 1 2的結果為3.5 double型別 表示式exp 3.5 1 2 由以下兩個表示式exp1和exp2構成 exp exp1 exp2 3.5 1 2 1 exp1 3.5,這是乙個常數表示式,表示式的值為3.5,值型別為double 2 ...