Logical Operators in C

Logical Operators are useful in combining one or more conditions. C allows usage of three logical operators namely " &&, ||, ! ".

Logical Operators

  Operator   Meaning
&&   Logical AND  
|| Logical OR
! Logical NOT

Truth Table of Logical Operator

In the following table
if True(T) means value is one.
If False(F) means valuse is Zero.
  X     Y     !X     !Y     X && Y     X || Y  
F F T T F F
F T T F F T
T F F T F T
T T F F T T
Consider the statement
a=5,b=7;c=5;
  Expression     Interpretation     Value  
(a>=5)&&(a<b) True 1
!(a==c) False 0
(a!=5)||(b>c) True 1
!(a==b) True 1

Codings for the above Example:
#include<stdio.h>
  int main()
  {
  int a=5,b=7,c=5;
  
  if((a>=5)&&(a<b)){printf("\"(a>=5)&&(a<b)\" = True\n");}
  else{printf("\"(a>=5)&&(a<b)\" = False\n");}
  
  if(!(a==c)){printf("\"!(a==b) or a is not equal to c\" = True\n");}
  else{printf("\"!(a==b) or a is not equal to c\" = False\n");}
  
  if((a!=5)||(b>c)){printf("\"(a!=5)||(b>c)\" = True\n");}
  else{printf("\"(a!=5)||(b>c)\" = False\n");}
  
  if(!(a==b)){printf("\"!(a==b) or a is not equal to b\" = True\n");}
  else{printf("\"!(a==b) or a is not equal to b\" = False\n");}
  
  return 0;
  }