logical and comparision operator
आज हम C programming के इस hindi tutorial को आगे पढ़ते हुए operators के बारे में और जानेंगे.
सबसे पहले नीचे Logical operators दिए जा रहे हैं.
1. ! - यह  एक uniary operator(NOT) है, जो केवल एक bool value लेता है और उसका उल्टा कर देता है, जैसे कि !true = false, !false = true 
2. || - यह एक binary operator(OR) है जो दो bool value लेता है उसमे से कोई भी true होने पर true देता है अन्यथा false देता है. जैसे कि true || false = true, false || false = false 
3.  && - यह एक binary operator(AND) है जो दो bool value लेता है उसमे से कोई भी false होने पर false देता है अन्यथा true देता है. जैसे कि true || false = false, false || false = false 
इनको इस तरह से समझ सकते हैं कि OR यानि अथवा(या), यानि कि अगर कोई भी एक सही(true) है तो result सही(true) होगा.  अगर दोनो गलत(false) हैं तभी result गलत(false) होगा.
इसी तरह AND यानि और(दोनो), यानि कि दोनो सही(true) है तभी result सही(true) होगा.  कोई भी गलत(false) हैं तो result गलत(false) हो जायेगा.


अब Comparison Operators को एक बार देखते हैं जिनका use पहले भी कर चुके हैं. उसके बार कुछ example में इनको use करेंगे.
1. == - यह  एक binary operator(equal) है जो दो int या दो bool value लेता है, अगर दोनो बराबर है तो bool value true देता है अन्यथा false देता है. जैसे कि (5 == 5) = true , (1 == 2) == false 
2. != - यह  एक binary operator (not equal) है जो दो int या दो bool value लेता है, अगर दोनो बराबर नहीं है तो bool value true देता है अन्यथा false देता है. जैसे कि (5 != 5) = false , (1 != 2) == true 
3. > - यह  एक binary operator (greater than) है जो दो int value लेता है, अगर पहला int बड़ा है तो bool value true देता है अन्यथा false देता है. जैसे कि (5 > 5) = false , (3 > 2) == true 
4. < - यह  एक binary operator (less than) है जो दो int value लेता है, अगर पहला int छोटा है तो bool value true देता है अन्यथा false देता है. जैसे कि (5 < 5) = false , (1 < 2) == true 
3. >= - यह  एक binary operator (greater than or equal) है जो दो int value लेता है, अगर पहला int बड़ा या बराबर है तो bool value true देता है अन्यथा false देता है. जैसे कि (5 > 5) = true , (3 > 2) == true 
4. <= - यह  एक binary operator (less than or equal) है जो दो int value लेता है, अगर पहला int छोटा या बराबर है तो bool value true देता है अन्यथा false देता है. जैसे कि (5 < 5) = true , (1 < 2) == true 

एक example से समझते हैं कि इनका use कैसे होता है. इस example में वर्ष(सन) input में लेंगे और यह print करेंगे कि फरवरी 28 की होगी या 29 की.(सामान्यतः जिस वर्ष में 4 का भाग चला जाये उसमे फरवरी 29 की होती है जिस वर्ष में 100 का भाग जाता है उसमे 400 का भाग भी जाना चाहिए, जैसे क़ी 1900,2100... में फरवरी 28 क़ी है पर 2000 में 29 की)
#include<stdio.h>
void main() {
  int i;
  printf("Enter the year: ");
  scanf("%d",&i);
  if(i%4==0 && i%100!=0) printf("Feb have 29 days");
  else if(i%400==0) printf("Feb have 29 days");
  else printf("Feb have 28 days");
}
% यह बताता है भाग देने पर शेष कितना आया. अगर शेष 0 आया इसका मतलब भाग चला गया. इस example में पहले हमने ये check किया है क़ी वर्ष में 4 का भाग जाये(i%4 ==0 ) और(&&) 100 का भाग न(i %100 !=0) जाये(1984, 2012) या फिर 400 का भाग चला जाये. इसी को थोडा दुसरे तरीके से भी लिख सकते हैं.
#include<stdio.h>
void main() {
  int i;
  printf("Enter the year: ");
  scanf("%d",&i);
  if((i%4==0 && i%100!=0) || i%400==0) printf("Feb have 29 days");
  else printf("Feb have 28 days");
}