1樓:南瓜蘋果
先運算()內的,然後運算&&,最後運算,答案是1。
邏輯表示式運算結果:
a&&b 只有a和b都是真時,表示式結果為真,有一個為假,表示式結果為假。
a||b a或b有一個為真,表示式結果為真,a和b都為假,表示式結果為假。
!a a為真時,表示式結果為假,a為假時,表示式結果為真。
擴充套件資料
條件運算子是c語言中唯一的一個三目運算子,它需要三個運算元,條件表示式為:
表示式1?表示式2:表示式3。
? : 稱為條件運算子
執**況:
先計算表示式1的值,若為真,則整個表示式的值為表示式2的值,否則,為表示式3的值。
當有多個條件表示式組成的符合條件表示式時,運算順序從右向左。
如:a>b?a:c>d?c:d相當於a>b?a:(c>d?c:d)
逗號運算子是特殊的運算子,將兩個表示式連線起來,一般形式:
表示式1,表示式2
執**況:先求解表示式1,再求解表示式2,最後的結果是表示式2的值。
2樓:匿名使用者
是1 先運算括號裡的
然後運算!
最後&&
3樓:手機使用者
!(4>=6)&&(3<=7)的值是true
4樓:緣之魅力
先運算()內的,然後運算&&,最後運算! 詳見運算優先順序
c語言上的問題 !(a+b)+c-1&&b+c/2的值 a=3,b=4,c=5
5樓:聽不清啊
整個表示式的值為真(即 1)
!(a+b)=!7=0
!(a+b)+c-1=0+5-1=4
b+c/2=4+2=6
原式=4&&6=1 //兩個非0的值,即兩個true,相與的值,仍為true,即1
6樓:匿名使用者
根據從左到右計算順序,結合運算子優先順序,根據定義
a = 3, b = 4, c = 5,假定 a,b,c 為 int。真值為1,假值為0。
計算步驟如下:
1、計算 a + b,結果為 a + b = 7
2、計算 !( a + b) 結果為 0,也可以認為是false(假)。
3、計算 c/2,假定c為int時,結果為 2(取整),為float或者double時為2.5,但不影響最終結果,因為都是真值(非零值)。
4、計算 0 + c,結果為 5
5、計算 5 -1,結果為 4。
6、計算 b + 2 或者 b + 2.5,結果為 6 或者 6.5。
7、計算 4 && 6 後者 4 && 6.5,因為兩邊都為非零值,所以結果為 1,或者true。
這裡主要是一個運算子優先順序的問題,在本表達多中。
小括號的優先順序最高,所以最先計算括號內的值。
其次是邏輯非,然後是除法,然後是 加減法,最終是 邏輯與。
7樓:匿名使用者
這個是邏輯運算只討論真假,與數值沒有多大關係只要弄懂運算級別高低就可以最後結果為一,不懂可以mm我
8樓:匿名使用者
()優先順序最高先算 !(a+b) =!7=0算術運算子大於&& 所以先算c-1=4
* /大於加減先算c/2=2然後加b等於6最後相與 4&&6 真與真還是真 最後等於1
9樓:麒麟也涅槃
a=3,b=4,c=5
a+b=7
!7=0
c-1=4 為真
b+c/2 不為0 所以也是真
真&&真 值為真 即=1
10樓:k寂寞的小炮
結果等於1
!(a+b) = 0;
0+c-1 = 4;
b+c/2 = 6;
6&&4 = 1;
11樓:匿名使用者
整個表示式為1啊···
12樓:有郊範圍
!(a+b)+c-1&&b+c/2=1
13樓:皚子萋萋
!(a+b)=0;1&&b=1;所以0+5-1+5/2=6
c語言計算表示式的值10*2%3-2?5:6%3?7:8和10 != 8+7 || 2<5 && 7/4 > 6/4
14樓:匿名使用者
10*2%3-2?5:6%3?7:8
這個從右向左計算,相當於
10*2%3-2?5:(6%3?7:8)
10*2%3-2?5:(0?7:8)
10*2%3-2?5:8
20%3-2?5:8
2-2?5:8
0?5:8
810 != 8+7 || 2<5 && 7/4 > 6/4相當於( 10 != ( 8+7 ) ) || ( ( 2<5 ) && ( 7/4 > 6/4 ) )
括號中先算,根據邏輯或運算版的規定,如果左邊權的邏輯值是1,右邊的就不計算了。
左邊的 10 != ( 8+7 ) 也就是10!=15,是成立的,邏輯值是1,所以 || 右邊的與運算就不進行了,整個表示式的值就是1
15樓:uspta鄭州站
第一題8
第二題真(或者1)
在c語言中,表示式5>3&&2||8<4-!0的值為多少?
16樓:帝鎍
正常思路:由於邏輯運算子優先順序別低於
比較運算子同時這兩種都低於算術運算子,因此先考慮後半部分,4-!0真值為1,而8<1的真值為0.再考慮或左邊的表示式,5>3&&2顯然真值為1最終結果為1||0當然結果為12)有||將表示式分成兩部分左邊的是5>3&&2顯然其真值為1因此1||任意真值都為1不用算後面的了。
真值為1
17樓:奧宇斯汀
你這個看運算子的優先順序以及短路運算。結果是 1
> 的優先順序 高於 && , &&高於 ||
優先順序 運算子 名稱或含義 使用形式 結合方向 說明
1 陣列下標 陣列名[常量表示式] 左到右
() 圓括號 (表示式)/函式名(形參表)
. 成員選擇(物件) 物件.成員名
-> 成員選擇(指標) 物件指標->成員名
2 - 負號運算子 -表示式 右到左 單目運算子
(型別) 強制型別轉換 (資料型別)表示式
++ 自增運算子 ++變數名/變數名++ 單目運算子
-- 自減運算子 --變數名/變數名-- 單目運算子
* 取值運算子 *指標變數 單目運算子
& 取地址運算子 &變數名 單目運算子
! 邏輯非運算子 !表示式 單目運算子
~ 按位取反運算子 ~表示式 單目運算子
sizeof 長度運算子 sizeof(表示式)
3 / 除 表示式/表示式 左到右 雙目運算子
* 乘 表示式*表示式 雙目運算子
% 餘數(取模) 整型表示式/整型表示式 雙目運算子
4 + 加 表示式+表示式 左到右 雙目運算子
- 減 表示式-表示式 雙目運算子
5 << 左移 變數《表示式 左到右 雙目運算子
>> 右移 變數》表示式 雙目運算子
6 > 大於 表示式》表示式 左到右 雙目運算子
>= 大於等於 表示式》=表示式 雙目運算子
< 小於 表示式《表示式 雙目運算子
<= 小於等於 表示式<=表示式 雙目運算子
7 == 等於 表示式==表示式 左到右 雙目運算子
!= 不等於 表示式!= 表示式 雙目運算子
8 & 按位與 表示式&表示式 左到右 雙目運算子
9 ^ 按位異或 表示式^表示式 左到右 雙目運算子
10 | 按位或 表示式|表示式 左到右 雙目運算子
11 && 邏輯與 表示式&&表示式 左到右 雙目運算子
12 || 邏輯或 表示式||表示式 左到右 雙目運算子
13 ?: 條件運算子 表示式1? 表示式2: 表示式3 右到左 三目運算子
14 = 賦值運算子 變數=表示式 右到左
/= 除後賦值 變數/=表示式
*= 乘後賦值 變數*=表示式
%= 取模後賦值 變數%=表示式
+= 加後賦值 變數+=表示式
-= 減後賦值 變數-=表示式
<<= 左移後賦值 變數<<=表示式
>>= 右移後賦值 變數》=表示式
&= 按位與後賦值 變數&=表示式
^= 按位異或後賦值 變數^=表示式
|= 按位或後賦值 變數|=表示式
15 , 逗號運算子 表示式,表示式,… 左到右 從左向右順序運算
在c語言中,表示式5>3&&2||8<4-!0的值為()。
18樓:匿名使用者
1)正常思路:由於邏輯運算子優先順序別低於比較運算子同時這兩種都低於算術運算子,因此先考慮後半部分,4-!0 真值為1, 而8<1的真值為0.
再考慮或左邊的表示式,5>3&&2顯然真值為1最終結果為 1||0 當然結果為12) 有 || 將表示式分成兩部分 左邊的是 5>3&&2 顯然其真值為1 因此 1 || 任意 真值都為1 不用算後面的了。真值為1
19樓:奧宇斯汀
你這個看運算子的優先順序以及短路運算。結果是 1
> 的優先順序 高於 && , &&高於 ||
優先順序 運算子 名稱或含義 使用形式 結合方向 說明
1 陣列下標 陣列名[常量表示式] 左到右
() 圓括號 (表示式)/函式名(形參表)
. 成員選擇(物件) 物件.成員名
-> 成員選擇(指標) 物件指標->成員名
2 - 負號運算子 -表示式 右到左 單目運算子
(型別) 強制型別轉換 (資料型別)表示式
++ 自增運算子 ++變數名/變數名++ 單目運算子
-- 自減運算子 --變數名/變數名-- 單目運算子
* 取值運算子 *指標變數 單目運算子
& 取地址運算子 &變數名 單目運算子
! 邏輯非運算子 !表示式 單目運算子
~ 按位取反運算子 ~表示式 單目運算子
sizeof 長度運算子 sizeof(表示式)
3 / 除 表示式/表示式 左到右 雙目運算子
* 乘 表示式*表示式 雙目運算子
% 餘數(取模) 整型表示式/整型表示式 雙目運算子
4 + 加 表示式+表示式 左到右 雙目運算子
- 減 表示式-表示式 雙目運算子
5 << 左移 變數《表示式 左到右 雙目運算子
>> 右移 變數》表示式 雙目運算子
6 > 大於 表示式》表示式 左到右 雙目運算子
>= 大於等於 表示式》=表示式 雙目運算子
< 小於 表示式《表示式 雙目運算子
<= 小於等於 表示式<=表示式 雙目運算子
7 == 等於 表示式==表示式 左到右 雙目運算子
!= 不等於 表示式!= 表示式 雙目運算子
8 & 按位與 表示式&表示式 左到右 雙目運算子
9 ^ 按位異或 表示式^表示式 左到右 雙目運算子
10 | 按位或 表示式|表示式 左到右 雙目運算子
11 && 邏輯與 表示式&&表示式 左到右 雙目運算子
12 || 邏輯或 表示式||表示式 左到右 雙目運算子
13 ?: 條件運算子 表示式1? 表示式2: 表示式3 右到左 三目運算子
14 = 賦值運算子 變數=表示式 右到左
/= 除後賦值 變數/=表示式
*= 乘後賦值 變數*=表示式
%= 取模後賦值 變數%=表示式
+= 加後賦值 變數+=表示式
-= 減後賦值 變數-=表示式
<<= 左移後賦值 變數<<=表示式
>>= 右移後賦值 變數》=表示式
&= 按位與後賦值 變數&=表示式
^= 按位異或後賦值 變數^=表示式
|= 按位或後賦值 變數|=表示式
15 , 逗號運算子 表示式,表示式,… 左到右 從左向右順序運算
c語言表示式中54840的值是多少
0 1,4 1 3,8 3為假,所以結果為假,即0 在c語言中,表示式5 3 2 8 4 0的值為多少?正常思路 由於邏輯運算子優先順序別低於 比較運算子同時這兩種都低於算術運算子,因此先考慮後半部分,4 0真值為1,而8 1的真值為0.再考慮或左邊的表示式,5 3 2顯然真值為1最終結果為1 0當...
c語言表示式求值設intx 1,y 1表示式 xy的值
因為 與 的運算優復先級一樣,並且結制合性都是從右bai向左,所以 x 先計算dux x 等於2,再求反,非zhi0求反值為0,至於daoy y自減運算,運算子在後面先取y的值,再進行自減運算,y y的值為0,但是自減之前先取y的值參與邏輯或運算,0邏輯或1結果為1 x y 1 y 1,表示先賦值後...
C語言表示式問題以及指標陣列,C語言指標陣列的問題
1 那個表示式的意思是,a 2,然後把4乘以5的結果賦值給a即最後 a 的值為20,a 2的結果沒有賦值給a。2 char name 宣告一個二維char型的指標。這樣進行初始化 char name 是因為編譯器可以根據 以及,來確定二維char 型陣列的維數。一維維數即為字串個數,3 二維維數是這...