邏輯運算符把各個運算的變量(或常量)連接起來組成一個邏輯表達式。
邏輯運算符有4個,它們分別是:。。ㄟ壿嫹牵、||(邏輯或)、&&(邏輯與)。蓿ó惢颍。在位運算里面還有。Γㄎ慌c)、|(位或)的運算。
什么是邏輯運算--邏輯運算用來判斷一件事情是“對”的還是“錯”的,或者說是“成立”還是“不成立”,判斷的結果是二值的,即沒有“可能是”或者“可能不是”,這個“可能”的用法是一個模糊概念,在計算機里面進行的是二進制運算,邏輯判斷的結果只有二個值,稱這二個值為“邏輯值”,用數的符號表示就是“1”和“0”。其中“1”表示該邏輯運算的結果是“成立”的,如果一個邏輯運算式的結果為“0”,那么這個邏輯運算式表達的內容“不成立“。
例1:通常一個教室有二個門,這二個門是并排的。要進教室從門A進可以,從門B進教室也行,用一句話來說是“要進教室去,可以從A門進‘或者’從B門進”用邏輯符號來表示這一個過程--能否進教室用符號C表示,教室門分別為A和B。C的值為1表示可以進教室,為0 表示進不了教室。A和B的值為1時表示門是開的,為0表示門是關著的,列表如下:
把表中的過程寫成邏輯運算就是: C = A || B 這就是一個邏輯表達式,它是一個“或”運算的邏輯表達式。這個表達式要表達的是這個意思--如果要使得C為1,只要 A“或”B其中之一為 1即可以達到。所以“||”運算稱為“或”運算。
思考--如果有一個表達式 C = A || B || C 怎樣理解這個邏輯表達式?
例 2:假設一個房間外面有一個曬臺,那么這個房間就縱向開著二個門,要到曬臺去,必須要過這二個門,很明顯這二個門必須都是開著的才行,否則只要其中一個門關著就去不了曬臺。列表如下:
把表中的過程寫成邏輯運算式就是: C = A && B && C ,用一句話來描述這個表達式--如果要使得C為1,必須A‘與’B都為1才行,否則其中任一個為0,C就為0。所以“&&”運算符稱為“與”運算。
思考--如果有一個表達式 C = A && B && C 怎樣理解這個邏輯表達式?
例 3:有一個問題如下,有一個晚會,對參加晚會的人有一定的條件限制,教師可以參加,學生當中只有年齡達到16歲以上的男生才能參加,怎樣用上面所講的邏輯運算來表達這樣的邏輯關系?
設能夠參加晚會為D,教師為A,男生為B,16歲以上為C,可以用下式來描述:
D = A || ( B && C ) /*這個表達式可以理解嗎,可以參照上面表格用0、1來寫一下*/
例 4:下面是一個程序,用到了if判斷語句(if是如果的意思)
#include<stdio.h>
void main()
{
int a=0,b=0,c=0;
scanf("%d%d%d",&a,&b,&c); /*從鍵盤輸入參加者的條件*/
if((a||(b&&c)) /*如果是教師或者是16歲以上的男生*/
printf("你可以參加這個晚會。"); /*輸出可以參加的信息*/
else /*否則*/
printf("你不能參加這個晚會。"); /*輸出不能參加的信息*/
}
邏輯量和邏輯值
在邏輯表達式里有參加邏輯運算的邏輯量及邏輯運算最后的結果(邏輯值),把這二個概念區分開來和記住它們是很重要的。
什么是邏輯量--凡是參加邏輯運算的變量、常量都是邏輯量。
文章來源于領測軟件測試網 http://www.kjueaiud.com/