먼저 논리 연산자에 대해 알아보겠습니다.
논리 연산자
-
이는 2개(또는) 이상의 표현식을 논리적으로 결합하는 데 사용됩니다.
-
논리적 AND(&&) 논리적 OR( || ) 및 논리적 NOT(!)
논리 AND(&&)
exp1 | exp2 | exp1&&exp2 |
---|---|---|
T | 티 | 티 |
티 | F | F |
F | 티 | F |
F | F | F |
논리적 OR(||)
exp1 | exp2 | exp1||exp2 |
---|---|---|
T | 티 | 티 |
티 | F | 티 |
F | 티 | 티 |
F | F | F |
논리적 NOT(!)
exp | !exp |
---|---|
T | 티 |
F | 티 |
연산자 | 설명 | 예시 | a=10,b=20,c=30 | 출력 |
---|---|---|---|---|
&& | 논리 AND | (a>b)&&(a(10>20)&&(10<30) | 0 | |
|| | 논리적 OR | (a>b)||(a<=c) | (10>20)||(10<30) | 1 |
! | 논리적 NOT | !(a>b) | !(10>20) | 1 |
예시
다음은 논리 연산자를 계산하는 C 프로그램입니다 -
#include<stdio.h> main (){ float a=0.5,b=0.3,c=0.7; printf("%d\n",(a<b)&&(b>c));//0// printf("%d\n",(a>=b)&&(b<=c));//1// printf("%d\n",(a==b)||(b==c));//0// printf("%d\n",(b>=a)||(a==c));//0// printf("%d\n",(b<=c)&&!(c>=a));//0// printf("%d\n",!(b<=c)||(c>=a));//1// }
출력
다음 출력이 표시됩니다 -
0 1 0 0 0 1
할당 연산자
변수에 값을 할당할 때 사용합니다.
유형
할당 연산자의 유형은 -
- 간단한 할당
- 복합 할당
연산자 | 설명 | 예시 |
---|---|---|
= | 간단한 할당 | a=10 |
+=,-=,*=,/=,%= | 복합 할당 | a+=10"a=a+10 a=10"a=a-10 |
프로그램
다음은 복합 할당 연산자를 위한 C 프로그램입니다 -
#include<stdio.h> int main(void){ int i; char a='h'; printf("enter the value of i:\n"); scanf("%d",&i); printf("print ASCII value of %c is %d\n", a, a); a += 5; printf("print ASCII value of %c is %d\n", a, a); a *= a + i; printf("a = %d\n", a); a *= 3; printf("a = %d\n", a); a /= 2; printf("a = %d\n", a); a %= 4; printf("a = %d\n", a); return 0; }
출력
다음 출력이 표시됩니다 -
enter the value of i: 3 print ASCII value of h is 104 print ASCII value of m is 109 a = -80 a = 16 a = 8 a = 0