關於C語言邏輯表示式X ay b II0

時間 2021-09-21 09:49:38

1樓:匿名使用者

!( x=a)&&(y=b)ii0 1.#include "stdio.h"

#include "math.h"

void main()

這是一個雙目運算子:判斷到||符號,後面的為0,所以還要再判斷||前面部分。 如果後面的為1,則不需要再判斷了。

然後首先判斷了x=a:a賦值給x是否成功,成功為1,然後!(x=a),即!

1為0,0與任何數 取&& 都為 0 ,所以 !(x=a)&&(y=b)ii0 的結果會為 0 。 2.

如果你的意思是 !(x==a)&&(y==b)ii0這樣來看#include "stdio.h"

#include "math.h"

void main()

判斷到 || 符號,後面的為0,所以還要再判斷 || 前面部分。這個時候因為x==a是false的,所以!(x==a) 是true的,而y==b是true的,所以!

(x==a)&&(y==b)是true的,所以列印出來的結果是1 如果把x=2;換一下#include "stdio.h"

#include "math.h"

void main()

判斷到x==a是true的,所以!(x==a) 是false的,所以 false &&' 其他' 都是false的,false || 0 也是false的,所以列印結果為 0 求|| 規則true || true -> true (1) true || false -> true (1) false || true -> true (1) false || false -> false (0) 求 && 規則true && true -> true (1) true && false -> false (0) false && true -> false (0) false && false -> false (0)

2樓:匿名使用者

先執行“!”再執行“&&”再執行“||”

c語言邏輯複合運算:!(x=a)&&(y=b)&&0

3樓:love衣者

我加了這麼一句printf("%d\n",y);

結果y的值不是4

可以得出先算!(x=a)

此處為假,則不再繼續往下做y=b&&0了

4樓:匿名使用者

1. (x=a) 運算後,x=3,表達

抄式的bai值也是

du32. !

zhi(x=a) <==> !3 = 0

----

3. (y=b) 運算後,y=4,表示式的值也是4----

4. !3&&4&&0 <==> 0&&4&&0 <==> 0&&0 <==> 0 (&&, 且運算,遇0得0)

----

a,b,c不變。還dao是3,4, 5

c語言裡,怎樣理解表示式(x=a>b)&&(y=c>d)的意義?

5樓:x曦_夢

a=5 b=4 c=2 d=3

首先進行 a>b 與 c>d 的比較 5>4 為真=1 2>3 為假=0

接著賦值給x=1 y=0

最後相與 x&&y

即 1&&0

結果為0

6樓:吉祥二進位制

將a>b的值賦值給x 將c>d的值賦值給y 然後進行邏輯與運算。 關鍵是優先順序

7樓:匿名使用者

運算子都是有優先順序和運算順序的。

x=a>b

先計算比較運算子,若a>b,則表示式為真,x=1,否則x=0,y=c>d

同上 y=0或1,

然後 把x和y兩個值進行&&運算

表示式的值也可能是1或0

8樓:幻月

這是關於預算符優先順序的,首先分別算2個括號裡的,左邊的關係運算子優先順序要比賦值優先順序高,所以先算a>b,如果a>b為真,則表示值為1,假則為0,然後把1或0賦給x;右邊同理,就不多說了;最後算&&,如果2個括號都為1,則,對外表示值1,否則對外表示值0

9樓:王哥哥

當x=1且y=1時,表示式的值為true。當a大於b時x=1,當c大於d時,y=1。

c語言寫出邏輯表示式的值

10樓:匿名使用者

1、實現用來戶輸入成績_正確為true__錯誤源為false的方法**。

2、測試

的結果如下所示。

3、實現判斷閏年的方法**,如下圖所示。

4、測試的結果如下所示。

5、實現與或的短路問題**如下所示。

6、最後測試的結果如下圖所示。

11樓:

&&是邏輯與,||是邏輯或;

只是判斷後面的表示式成立值成立值就為1,不成立就為0;

比如第一個是7>5&&4==3, 4==3顯然是不成立的,所以值為0;

12樓:匿名使用者

c語言中bai非0的都為真 表示判斷條件成

du立printf("putout:%d\n",a+b>c&&b==c); // 4 == 5 為假 就是

zhi0 因為用的dao是&&必須兩面都是真版才為真

printf("putout:%d\n",a|權|b+c&&b-c); //(a || (b+c)) && (b-c) ,真 || 真 && 真 = 真

printf("putout:%d\n",!(a>b)&&!c||1); //(!(a>b) && !c) || 1 ,(假 && 假) || 真 = 真

printf("putout:%d\n",!(x=a)&&(y=b)&&0); // !(x=a) && (y=b) && 0 (假 && 真) && 假 = 假

printf("putout:%d\n",!(a+b)+c-1&&b+c/2); // !

(a+b) + c - 1 && b + c / 2 ,(假 + c - 1) && 6 = 真

13樓:匿名使用者

||||

非0即為真

&&是邏輯與,||是邏輯或,優先順序:&&>||1.printf a+b>c(真)版 b==c(真)2.

printf a(真) 因為是"||"運算權,後面就不用看了3.printf !(a>b)(真) !

c(假) 1(真)4.printf 0(假) 因為是“&&”運算,肯定是05.printf !

(a+b)+c-1(真) b+c/2(真)

14樓:匿名使用者

第一個,a+b>c 就是3+4>5成立,為1;而b不等於c,b==c為0,而&&兩者都是1得值才是1,所以第一個為回0.

第二個,此處+-優先順序最高,答其次是&&,最低是||,注意同是邏輯運算子優先順序不一樣。還須注意,按照優先順序加括號:

a || b + c && b - c

=a || ((b + c) && (b - c))

=3 || ((4 + 5) && (4 - 5))

=3 || 1

=1第三個,相當於((!(a>b))&&(!c))||1),||有1就是1,所以就是1。

第四個,相當於(!a)&&b&&0,也就是0&&1&&0,所以為0。

第五個,((!(a+b))+c-1)&&(b+c/2)=(!7+5-1)&&(4+2)=(0+5-1)&&(6)=4&&6=1。

邏輯表示式只要不是0,其他都是1

c語言: 寫出下面各邏輯表示式的值。設a=3,b=4,c=5。 (1) a+b>c && b==

15樓:匿名使用者

1) 0

2) 1

3) 1

4) 沒有x和y的定義,無法計算。

5) 1

在c語言中,x=(a&&b)&&(c<'b')是什麼意思

16樓:匿名使用者

這個要看變數a b的型別了 b的型別是字元 但在運算的時候是66 對於int型 1=真=true 0=價=false

邏輯賦值表示式,右邊先算a&&b,意思是a並上b,如果ab中有一個為零,則表示式為零,而上面因為a=14,b=15,所以a&&b=1,再算c<'b',取出c和b的ascii碼進行比較,因為c='a',a的ascii碼值為65,b為66,所以c<'b'值為1(這個式子意思是判斷c的ascii碼是否小於b的ascii碼值,是的話式子的值就是1,不是則為零),這樣這個式子就簡化為x=1&&1,當然就等於1了。

17樓:

a和b的邏輯與的值和c<'b'的邏輯值再進行邏輯與,將結果(邏輯值)賦給變數x。

18樓:匿名使用者

&&是邏輯運算子號'與',按照規定如果2個數不為0,那麼相與之後為真,即為1,a&&b就是14&&15,因為2個數都不為0所以結果為真,即為1,(c語言預設真為1)然後是c<'b'=a

19樓:瘋狂教育技術

這是個邏輯賦值表示式,右邊先算a&&b,意思是a並上b,如果ab中有一個為零,則表示式為零,而上面因為a=14,b=15,所以a&&b=1,再算c<'b',取出c和b的ascii碼進行比較,因為c='a',a的ascii碼值為65,b為66,所以c<'b'值為1(這個式子意思是判斷c的ascii碼是否小於b的ascii碼值,是的話式子的值就是1,不是則為零),這樣這個式子就簡化為x=1&&1,當然就等於1了。

ascii碼對照表

20樓:真理的尋找

&&是與運算

如果兩者都為真則結果為真,如果前者為假後者不計算。

你這個兩個都為真,所以結果為真,真一般用1表示,假用0表示所以你得輸出結果為1

21樓:等待離校

這是個比較結果的返回

a=14,b=15,非0為true的原則,a&&b的結果為truec=a,a一結果也是true

true&&true肯定是true

一般預設true為數字的話就是1,有些系統可能不一樣

22樓:匿名使用者

(a&&b) 表示只要a b不同時為ascii中的0該表示式就不為0;

(c<'b')是說如果c的ascii碼值小於'b'的ascii值就為真。

(a&&b)&&(c<'b') 在上述兩個表示式都真時為真

23樓:匿名使用者

a!=0並且b!=0並且c所代表的字母的ascii值小於b的ascii值,當以上條件都成立時,x=1,否則,x=0;因為題目中a,b都不為0 而且a小於b所以表示式成立。

為1,即x=1

24樓:匿名使用者

邏輯運算結果不是1 就是0

條件為真即為1,條件為假即為0

c語言中,邏輯表示式(a!=0)||(b!=0)可以表示a、b不能同時為零嗎?

25樓:匿名使用者

能。當判定a!=0時便不再執行接下來的b!=0的語句,而a=0時才會對b進行判斷。只要一個不為0這語句便是‘真’

c語言表示式求值,C語言關於表示式求值

c語言有豐富的表示式,這是它的特點之一,表示式主要有4類,算術表示式,賦值表示式,逗號表示式,關係表示式。1.算術表示式就是包含算術運算子 如 等 的表示式 不是語句,後面沒有分號 如 a b,a b,a b c d,3 5等,算術表示式的值就是最後算出的結果,如3 5這個表示式的值就是8 2.賦值...

關於c語言邏輯表示式的問題,求高手啊

倒黴熊 c語言中,為了加快編譯速度,有一條這樣的規定,當一個邏輯表示式的值能夠確定下來的時候,它不會執行下面的語句。例如 a b這個表示式,如果a為假,則 a b一定為假,不管b為真,還是假,也就是a等於假時,這個表示式的值已經確定了。所以b不會執行了。但,如果a為真,則 a b的值就確定不了,因為...

c語言表示式0的邏輯值是什麼,c語言,表示式( x 0)的邏輯值是什麼?

x 0,的優先順序高,所以相當於 x 0。題目沒說x是什麼型別,暫且當成整型吧。c的邏輯運算中,把0當做false,非0當做true。表示式進一步解釋為 x false。於是 x 的結果就是,如果x是0,則 x 是true 否則 x 是false。所以,如果x是0,x false的結果是false ...