1樓:匿名使用者
()&&() 中&&是邏輯運算子 是邏輯與 說白了就是&&兩邊的值都為真是 它的結果才為真(內1) ;
m=a>b 的意識是 先比較a b的大容小,如果a>b 則返回真(1)給m 相反這為假(0);
n=c>d同上
2樓:匿名使用者
先看括號裡的,bai括號中的優先順序du
要高,zhi因為關係運算賦(<,>,<=,>=)的優先dao級大於賦
版值運算子(=),權所以先判斷關係表示式a>b和c>d的值,如果為真,值為1,如果為假,值為0,然後再把值分別賦給m和n,然後就是看&&(邏輯與)這個運算子了,如果m和n的值同時為1,則整個表示式的值為1,即真,如果有一個為0,則整個表示式的值為0,即假。
3樓:願有好心情
(m=a>b)&&(n=c>d)
首先 比較 a>b, 大於m=1,否則m=0其次比較 c>d 大於 n=1,否則n=0然後 計算以下算式 : (m != 0) && (n!=0)
4樓:匿名使用者
m和n是布林型的,就是1真 和 0假。a>b那m就是1,相反就是0。
&&就是 m和n同時為真才是1,其他情況全是0。
5樓:匿名使用者
這行**可以等同於
下面回的**答
if(a>b)
else
if(m == 1)
else}
c語言中 (m=a > b)&&(n=c > d)是什麼意思
6樓:其穎包書雲
( m=a>b)&&(n=c>d)
首先比較
a>b,
大於m=1,否則m=0
其次比較
c>d大於n=1,否則n=0
然後計算以下算式
:(m!=
0) &&
(n!=0)
在c語言中,a=(m=a>b)&&(n=c
7樓:天雲一號
a=(m=a>b)&&(n=c>d)表示將條件(m=a>b)與條件(n=c>d)進行邏輯與運算後,將結果賦值給變數a。
具體執行過程可以通過如下例項來說明:
int a=1, b=2, c=4, d=3;
int m, n;
a=(m=a>b)&&(n=c>d);
// 先計算(m=a>b),由於a>b為假,所以m=0;
// 再計算(n=c>d),由於c>d為真,所以n=1;
// 最後計算邏輯與,此時將m=0與n=1進行與運算,結果為0,之後將最終結果0賦值給變數a,所以經過a=(m=a>b)&&(n=c>d);運算後a=0
8樓:儀東澤
m=(a>b)為0這時候這個已經false了,後面就不用運算了,n還是2,m為0
9樓:匿名使用者
如果a>b,那麼m=1,否則m=0;
如果c<d,那麼n=1,否則n=0;
求出m,n後,再求m&&n,
如果m,n都等於1,則a=1,否則a=0.
10樓:匿名使用者
(m=n= =b)|| (n=c= =d)就是把(n=b)這個表示式的值(0或1)賦給m,然後(c=d)的值賦給n,
(注意,以上兩條式子是數學表示式而不是c語言**!)最後讓這兩個值邏輯或(不是位或!就是1||99仍然為1)
11樓:匿名使用者
這是個運算子優先順序的問題
==的優先順序大於=,這段**可以翻譯為
m=(n==b);
解釋為:如果n等於b,那麼m等於true(即1);否則m等於false(即0);
n=c==d也是這個意思
連線起來就是
如果m等於1或者n等於1,這個表示式的值為1,否則為0;
或者這樣解釋
如果n等於b或者c等於d,這個表示式的值為1,否則為0;
二者是一個意思。
12樓:匿名使用者
()&&() 中&&是邏輯運算子 是邏輯與 說白了就是&&兩邊的值都為真是 它的結果才為真(1) ;
m=a>b 的意識是 先比較a b的大小,如果a>b 則返回真(1)給m 相反這為假(0);
n=c>d同上
13樓:守豬の待兔
m= n==b n與b是否相等的判斷結果賦值給m
(n=c= =d) c與d是否相等的判斷結果賦值給n
最後m與n 或||一下... 得到最後的邏輯值
14樓:匿名使用者
先看括號裡的,括號中的優先順序要高,因為關係運算賦(<,>,<=,>=)的優先順序大於賦值運算子(=),所以先判斷關係表示式a>b和c>d的值,如果為真,值為1,如果為假,值為0,然後再把值分別賦給m和n,然後就是看&&(邏輯與)這個運算子了,如果m和n的值同時為1,則整個表示式的值為1,即真,如果有一個為0,則整個表示式的值為0,即假。
15樓:晨媽
我認為m=0 n=2
(m=a>b)&&(n=c>d)
16樓:bruce於
n是false吧,邏輯與的第一部分判斷為false,第二部分就不會去判斷了,取預設值為false
17樓:朗月拂鳴
先將a的值賦給m,即m=1,而b=2,顯然m=a>b的值是0.由於是"與'運算,後面的式子可以不看,即不用執行了。整個表示式的值也為0.而n前後的值沒有變化,n=2
18樓:匿名使用者
&&並且判斷,先走左邊的m=a>b
=賦值,先走右邊的a>b
a>b嗎?不!所以a>b的值是0
m=0的值是0,賦值會用=左邊的值作為整個語句的值&&左邊0,不走右邊了,n=c>d沒執行
最後n=2
下面這個程式中(m=a>b)&&(n=c
19樓:匿名使用者
(m=a>b)&&(n=c由於a>b,即5>6為假,bai所以dum=0,0&&任何值都為0,所以(n=czhi被短dao路,沒有進行運算,所以n仍然等版於原值2,故權輸出2.
&&和||,也稱為短路運算子,這個題目考察的就是這個功能0&&任意值=0,1||任意值=1,後面任意值的表示式都被短路掉,不進行運算。
請問一下c語言中(m=a>b)&&(n=c>d)a=1b=2c=3d=4是什麼意思?詳細一下謝謝
20樓:謇思萱以君
(m=a>b)&&(n=c>d)
a>b的布林值賦值(1或0)給m,如果為真,繼續執行n=c>d.如果a>b為假,則不執行c=c>d
a=1b=2c=3d=4
這表示式有問題
21樓:汪蕙芸仝真
||這個問題中
(m=a>&&
運算時;b)
為0,遇到了結果為
1,根據邏輯與運算規則,||
運算時:有0則
0。同理版
,這樣可權以提高程式效率,所以後面的
(n=c>,結果肯定為
0,被忽略了;d)
就不計算了,何必浪費時間,如果前面的表示式為0的話,因為無論如何,後面的表示式就計算了,不一定每個表示式都計算的,後面的表示式就不再計算了
22樓:校和雅洪羨
m=a>b就是把a>b的比較結果
bai賦給
dum,即a>b成立時,m=1否則
zhim=0
同理n=c>d也是一樣
那麼(m=a>b)
&&(n=c>d)的意思就dao是(a>b)&&(c>d),同版時把a>b的結果權賦給m,c>d的結果賦給n
a=1b=2c=3d=4這個不符合語法規則啊??是不是a=1;b=2;c=3;d=4?
c語言 d=!( (m=a
23樓:看灰過來了
1、計算m=a果a立,則m=1,否則m=0,此表示式值與m值相同2、計算n=b回b否則n=0,此表示式值與答n值相同3、上面兩個表示式的值進行&&運算,只要有一個值為0,計算結果為0,兩個值都為1,則此表示式值為1
4、對第3步的結果取非運算,如果第3步是1,則取非之後為0,否則為1.
C語言中for迴圈語句,c語言中for語句是怎麼用的
for 語句包括三個表示式,第一個和第三個可以省略,省略第一個的意思是在for之前已經對變數初始化,例如i 0 for i 5 i 和for i 0 i 5 i 意思相同 第三個省略的意思也很明顯,原來的i 可以在for迴圈語句中實現,例如 for i 0 i 5 i 和for i 0 i 5 i ...
c語言for語句,c語言中for語句是怎麼用的
中間那個語句i 20,j 10說明只要i和j符合這個條件就迴圈,第一次i 0,j 20符合i 20,j 10條件,迴圈繼續,轉入下面的i j i的值變為1,j為19,以此下去迴圈 include int main printf d d n i,j 我們測試下 就能知道結果 for i 0,j 20 ...
在c語言中if語句後跟個continue是什麼意思
continue對if無效 在if後面跟continue 說明這個if是在迴圈中的 如果滿足if條件 那麼直接進行下一次迴圈。該if語句應該是包含在迴圈當中的,continue表示滿足if條件則提前結束迴圈體的後面的語句,回到迴圈條件判斷是否再迴圈 continue語句用於迴圈語句中,作用是不執行迴...