c語言裡和的區別,C語言中, 和 有什麼區別, 和 有什麼區別

2021-03-27 11:24:15 字數 5177 閱讀 2620

1樓:月光疾風

"&&"表示"與", 意思是條件必須同時成立"||" 表示"或", 意思是條件有一個成立即可.

if((a*a+b*b>c*c)&&(b*b+c*c>a*a)&&(c*c+a*a>b*b))這個是判斷銳角三角形的條件,你只要學過數學就應該知道銳角三角形的成立條件是:任意兩邊長度的平方和大於第三邊長度的平方。

所以要用"&&"而不是"||"。

2樓:匿名使用者

因為if((a*a+b*b>c*c)&&(b*b+c*c>a*a)&&(c*c+a*a>b*b))這三個條件必須同時滿足(也就是邏輯與)的條件下才是銳角三角形。

||的話只要一個條件滿足就可以。

3樓:小貓釣魚

銳角三角形的性質:任何兩邊的平方的和都必須大於第三邊的平方。

因為是「任何...都...」,所以a²+b²>c²,a²+c²>b²,b²+c²>a²這三個式子必須同時滿足,而不是滿足一個即可,所以使用 &&

4樓:匿名使用者

&&是邏輯與,只有他左右兩個表示式都為真,整個表示式才為真,在他的左表示式為假的時候右表示式是不判斷的,

||是邏輯或,只要他左右的表示式有一個為真,整個表示式就為真,在他的左表示式為真的時候右表示式是不判斷的。

c語言中,&和&&有什麼區別,|和||有什麼區別

5樓:天雨下凡

&和|是針對位的操作,&&與||是邏輯操作符

設有變數x和y,則x&y,是先把x與y轉換成二進位制,再對每一位進行&運算,都為1,則結果為1,否則為0,x|y也是先把x與y轉換成二進位制,再對每一位進行|運算,只要有一個為1,則結果為1,二個都為0,結果才為0

x&&y,如果x與y都為真(非0),則結果為1,否則為0,x||y,只要x與y中有一個為真(非0),則結果為1,只有兩都同時為0,結果才為0

6樓:my繆宇

&:是與的意

思&&:是且的意思

|:是或的意思

||:也叫或

&: 兩個數字位操作 and。或者取某個變數的地址,或宣告引用。

對 bit:(0 & x ) = 0; ( 1 & x ) = x;

&&:兩個 bool 值的「並且」。( false && x ) = false; (true && x)= x;

|:兩個數字 位操作 or。對 bit: ( 0 | x ) = x; ( 1 | x ) = 1;

||:兩個bool 值的「或」。( true || x ) = true; ( false || x ) = x;

邏輯運算與按位運算,不一樣的兩種運算。

按位運算是把整數的每個二進位制位與另一個整數對應的每個二進位制位進行運算,是整數到整數的運算。邏輯運算其實是布林值到布林值的運算,只不過在c當中,所有非零整數都理解true,所有0都理解為false。所以4 && 2 == 1,其實是4是true,2也是true,與的結果是true,所以是1。

而按位操作,4是0b0100, 2是0b0010,它們沒有重疊的二進位制位,所以結果是4 & 2 == 0

7樓:匿名使用者

&& 是條件判斷,返回結果只有1或0(即真或假)& 是與運算子,就像+-×÷一樣可以返回任意位數的結果假設x,y,z都是8位數

則x&&y=0;

x||y=1;

y&&z=1;

y||z=1;

x&y=0000 0000&1111 1110=0;

x|y=0000 0000|1111 1110=1111 1110;

8樓:他de生活

區別:1.運算子

性質不同。

&是一個位運算子。

&&是一個邏輯運算子。

2.作用不同。

&是將兩個二進位制的數逐位相與,結果是相與之後的結果。

&&就是判斷兩個表示式的真假性,只有兩個表示式同時為真才為真,有一個為假則為假,具有短路性質。

3.用途限制。

&除了是一個位運算子,也是取地址符。

&&就是一個單純的邏輯運算子,沒有任何其他含義。

9樓:匿名使用者

&要計算表示式1個小時表達

式2,而&&計算表示式1若此時表示式1是false則&&就不會再計算第二個表示式,而直接輸出&&運算的結果是false。同理||運算的第一個表示式是true則||運算會直接輸出邏輯結果而不在計算第二個表示式。

10樓:戀_心坊

&是位運算的與,每一位都要進行,&&是表示式的與,操作整個邏輯式,|(或)同理。

c語言中:&&和||符號是什麼意思?

11樓:

在c語言中,&&和||都屬於邏輯運算子,並且都是雙目運算子。邏輯運算子總共有3個,分別是"&&"、"||"和"!"。

邏輯運算子是用來判斷一件事情是"成立"還是「不成立」,或者說是「真」還是「假」,判斷的結果只有兩個值,用數字表示就是「0」和「非0」。其中,「非0」表示該邏輯運算的結果是「真」,「0」表示這個邏輯運算表示式的結果為「假」。

&&是邏輯與運算子,a && b,一假必假,結合性從左至右。

||是邏輯或運算子,a || b,一真必真,結合性從左至右。

12樓:匿名使用者

左邊那個是並且的意思,一般用於語句的邏輯判斷,右邊那個是運算子,相當於與

13樓:匿名使用者

c語言中&&和||運算子是邏輯運算子,&&是邏輯與,||是邏輯或。以下是這兩種運算子的真值表:

c語言中&&和|的區別?

14樓:匿名使用者

&&:邏輯與,

抄前後條件襲同時滿足表示式為真

||:邏輯或,前後條件只要有一個滿足表示式為真&:按位與

|:按位或

&&和||是邏輯運算,&與|是位運算

假如在計算機中true以非0值表示,不同的編譯器true值也不一樣,一般為1

a||b = true,

a&b = 0; 值唯一

a|b = 0xff; 值唯一

「&&」跟「|」沒有關係,在用「||」的地方一般也可以用|代替,但是用「|」的地方不能用「||」代替

15樓:大肚子福福

&&前後條件都滿足,|只滿足一個就行,如果前一個條件滿足,可以不判斷後面一個條件

16樓:無語

推薦你好好看看書,就是挺簡單的別想的那麼複雜 這些你會應用就可以了 如果你是底層開發的 那就要精通了哦

c語言中的運算子的&與&& 和 |與||有什麼區別,用在什麼地方

17樓:yesyes科

和|&和|是位運算。&&和||表示邏輯關係,&&和||表示式最終的值只可能是真(1)或者假(0),而位運算表示式的值不限於0和1 兩者在特定情況下的效果是相同的。操作方法如下:

1、首先這裡用到字元的ascii碼,a的ascii碼為65,之後用scanf函式進行輸入。if設定為巢狀語句,判斷輸入的字元是不是在a-z之間,系統比較的是二者的ascii碼,來輸入大寫字母g。

2、還是字母大小寫的轉換,利用邏輯運算子對第一個程式進行改寫。使用邏輯與&&運算子之後,**更易於理解,而且計算機處理的時候更容易。

3、將letter = letter - 『a' = 'a'改為了letter  += 'a' - 'a',**可讀性提高,開始執行,輸入一個【,可以看到,非字母字元的輸出達到了解決。

4、接下來要用五個新函式去完成這個程式,isalpha(),這個函式用來測試字元是否為字母,是返回true,isupper()和islower()用來測試字母是大寫還是小寫,最後兩個函式toupper和tolower分別是用來將字元轉換為大寫和小寫。

5、執行輸入g,就完成了。

18樓:匿名使用者

&和|是位運算;&&和||表示邏輯關係

&&和||表示式最終的值只可能是真(1)或者假(0)

而位運算表示式的值不限於0和1兩者在特定情況下的效果是相同的,但是不建議這麼做,會讓人產生困惑

19樓:匿名使用者

|,c語言中邏輯運算子(&&,||,!)和位運算子號(&,|,^)的區別

在c語言中,程式設計者經常混淆兩組運算子:(&&,||,!)和(&,|,^)。

第一組是邏輯運算子,它的運算元是布林型,而第二組則是位運算子,其運算元是位序列。在布林型運算元中,只有兩個數值,0或1。c語言規定,在邏輯運算中,所有的非0數值都看做1處理。

而位序列則可以是有無符號的字元型,整型,長短整型等。在位運算中,是相應的位之間進行邏輯運算。因此,從邏輯上講,位運算過程包含多個邏輯運算過程。

通常,位運算運算元選擇無符號型資料。

1 應用例項

#include

int main(int argc, char *argvs)執行結果是:

false: a && b is 0

true: a && s is 1

true: a && c is 1

true: s && c is 1

a & b is 0

a & s is 10

a & c is 1

s & c is 0

a & 0x110 is 10

20樓:匿名使用者

& |是位操作,一般操作在某個變數上

&& || 是邏輯判斷,並且和或者的意思,一般操作在表示式邏輯上的,如:

if ( a&& b ) 表示 a為真且b為真c= a&b ; //進行運算,得到一個新的結果

21樓:竹冽巖青

&是 按位與 比如a=0xf0(11110000b),b=0xcc(11001100),那麼a&b=0xc0(11000000b),意思就是每組二進位制位響應地做與運算

同理 | 是按位取或,a|b=0xfc(11111100b)意思就是每組二進位制位相應地做或運算。

&&和||就是判斷邏輯的與和或,比如(a==b)&&(c==d)意思就是,a等於b,並且c等於d時表示式為真,邏輯上的

c語言和有什麼不同,C語言中和的區別

是按位與運 算,比如a 6,b 5,表示成二進位制數 a 0110 b 0101 a b 0100 逐個位進行與運算 當然如果放在回 一個變數前面可以為取地址答的意思,如 a,就是取a的地址 是邏輯與,比如 真 真 為 真 c語言中,是指標運算子,是邏輯運算子,a 指的是變數a的實體地址,而 相當於...

關於C語言中中的規則,關於C語言中和的用法

如果你的函式裡用的是指標形式,那麼在你的函式呼叫的時候就要用 形式了,具體你參考譚浩強的c語言書,裡面有更全的解釋,不好,還望採納 關於c語言中 和 的用法 和 都是邏輯表示式裡常用的,一般用法是 if 表示式1 表示式2 或者 if 表示式1 表示式2 表示 或 滿足其中一個,整個表示式就為真,就...

c語言中的錯誤和警告有什麼區別,C語言中的錯誤和警告有什麼區別

錯誤會導致程式無法編譯通過,進而不能執行 而警告是說程式中有些 編寫不是非常恰當,不會影響程式編譯,在少數情況下會影響程式執行 一般警告可以忽略,而錯誤是必須要修改的 錯誤 如果出現,本程式將無法執行。警告 警告或者說是建議,比如你宣告瞭一個變數,並沒有使用。它會警告你。錯誤一般是 中出現語法錯誤,...