A. 邏輯非,邏輯與,邏輯或和非,與,或的區別
1 「!」(邏輯非)、「&&」(邏輯與)、「||」(邏輯或)是三種邏輯運算符。
2 「邏輯與」相當於生活中說的「並且」,就是兩個條件都同時成立的情況下「邏輯與」的運算結果才為「真」。
3 「邏輯或」相當於生活中的「或者」,當兩個條件中有任一個條件滿足,「邏輯或」的運算結果就為「真」
4 」邏輯非「就是指本來值的反。
(1)編程與和或怎麼表示擴展閱讀:
邏輯運算又稱布爾運算布爾用數學方法研究邏輯問題,成功地建立了邏輯演算。他用等式表示判斷,把推理看作等式的變換。這種變換的有效性不依賴人們對符號的解釋,只依賴於符號的組合規律 。這一邏輯理論人們常稱它為布爾代數。邏輯非,就是指本來值的反值。
但是如果左邊操作數為false,就不計算右邊的表達式,直接得出false。類似於短路了右邊。| 稱為邏輯或,只有兩個操作數都是false,結果才是false。 || 稱為簡潔或或者短路或,也是只有兩個操作數都是false,結果才是false。但是如果左邊操作數為true,就不計算右邊的表達式,直接得出true。類似於短路了右邊。
邏輯運算用來判斷一件事情是「對」的還是「錯」的,或者說是「成立」還是「不成立」,判斷的結果是二值的,即沒有「可能是」或者「可能不是」,這個「可能」的用法是一個模糊概念,在計算機裡面進行的是二進制運算,邏輯判斷的結果只有二個值,稱這二個值為「邏輯值」,用數的符號表示就是「1」和「0」。其中「1」表示該邏輯運算的結果是「成立」的,如果一個邏輯運算式的結果為「0」,那麼這個邏輯運算式表達的內容「不成立「。
B. 為什麼計算機編程中有&符號
1. & 符號表示「和」或「與」,在英文中相當於 "and" 這個詞。
2. & 字元的起源可以追溯到公元1世紀,它是拉丁語 "et"(意為「和」)的簡寫形式。
3. 在計算機編程中,& 通常用作取地址符,例如在語句 「int a=0; int *p; p=&a;」 中,它表示獲取變數 a 的地址並將其賦值給指針 p。
4. 在C語言中,兩個連續的 && 符號表示邏輯「與」運算,例如在條件語句 「while(a==9 && b==5)」 中,只有當 a 等於 9 且 b 等於 5 時,循環才會繼續執行。
5. & 符號的應用場景包括:在HTML或SGML文檔中,用於指示存在字元(特殊字元)的默認符號;在電子表格程序中,用於在公式中插入文本的操作符;以及在英文中作為 "and" 的縮寫,可讀作 "and"。
6. & 字元的讀音是 「z'da」。
7. & 還有表示「聯合」的含義,例如 「A&B」 公司,意味著 「A」 和 「B」 兩家公司合並。
8. 在某些計算機編程語言中,如Java,& 符號表示按位「與」運算。
9. & 在英文中的拼寫是 "ampersand"。
C. C語言邏輯或與非的用法
C語言邏輯或與非用於邏輯運算,可以在一條語句中同時出現,但還有優先順序的限制。
基本應用:
邏輯與,符號為「&&」,只有兩個操作數都是真,結果才是真。邏輯或,是邏輯運算符,符號是「||」。表示當兩個條件中有任一個條件滿足,「邏輯或」的運算結果就為「真」。「!」(邏輯非)邏輯運算符。「邏輯非」就是指本來值的反值。
優先順序:
C語言中,運算符的運算優先順序共分為15 級。1 級最高,15 級最低。邏輯與運算符 13級「&&」邏輯與運算符。邏輯或運算符 14 級,「 || 」邏輯或運算符。邏輯否「!」單目/一元運算 3級。因此優先順序為:邏輯非高於邏輯與高於邏輯非。
運算方向:
在C語言中,只有4個運算符規定了運算方向,它們是&&、| |、條件運算符及賦值運算符。&&、| |都是先計算左邊表達式的值,當左邊表達式的值能確定整個表達式的值時,就不再計算右邊表達式的值。如 a = 0 && b; &&運算符的左邊位0,則右邊表達式b就不再判斷。
(3)編程與和或怎麼表示擴展閱讀:
相關規則及應用:
1、邏輯運算符:a=1,b=1;a||b-1;因為a=1為真值,所以不管b-1是不是真值,總的表達式一定為真值,這時後面的表達式就不會再計算了。
2、短路原則:
在邏輯表達式的求解過程中,任何時候只要邏輯表達式的值已經可以確定,則求解過程不再進行,求解結束。表達式中優先順序最低的邏輯運算符,以這些運算符為准將整個邏輯表達式分為幾個計算部分。最左邊一個計算部分開始,按照算術運算、關系運算和邏輯運算的規則計算該部分的值。
每計算完一個部分就與該部分右邊緊靠著的邏輯運算符根據真值表進行邏輯值判斷。如果已經能夠判斷出整個邏輯表達式的值則停止其後的所有計算;只有當整個邏輯表達式的值還不能確定的情況下才進行下一個計算部分的計算。