관계연산자 종류
연산자 | 예 | 결과값 |
== | 10 == 9 | 0 |
!= | 3 != 3 | 0 |
> | 5 > 5 | 0 |
>= | 5 >= 5 | 1 |
< | 7 < 7 | 0 |
<= | 7 <= 7 | 1 |
논리연산자 종류
연산자 | 예 | 결과값 |
! | !9 | 0 |
&& | 3 >= 3 && 3 > 3 | 0 |
|| | 5 > 5 || 5 >= 5 | 1 |
조건문
- 단순 if 문
if( 조건 ){
조건이 만족할때의 처리;
}
- if ~ else 문
if( 조건 ){
조건이 만족할때의 처리;
}
else{
조건이 아닐때의 처리
}
- 다중 if 문
if( 조건1 ){
조건이 만족할때의 처리;
}
else if(조건2){
조건2가 만족할때의 처리
}
else{
모든 조건이 아닐때의 처리
}
#include<stdio.h>
int main()
{
int i = 3;
int j = 4;
if( (++i > j--) && (i++ < --j) ) i = i-- + ++j; // && 앞부분이 거짓이므로 뒷부분은 연산하지 않고 else로 넘어감
else j = i-- - --j;
printf("%d\n", i); // 결과값은 3이 출력 됨
} // 단항 연산자가 앞에 있으면 연산하기 전에 반영, 뒤에 있으면 연산을 수행한 후에 반영
#include<stdio.h>
int main(){
int a = 3+5, b = 1, c;
int ap, bp;
ap = a++; // 8을 ap 값에 넣어준 후에 ++를 수행하므로 a = 9가 됨
bp = ++b; // ++가 앞에 있으므로 b = 2가 된 후에 bp에 넣어줌
b = 3 * (ap == 8); // ap = 8 이므로 b = 3 * 1
c = 5 * (ap != 8); // c = 5 * 0
printf("%d %d %d %d %d", a, b, c, ap, bp); // 9 3 0 8 2 가 출력됨
}
int a = 10, b = 20;
num = (a++ == 11) && (b++ == 20); // 10 == 11 비교한 다음 ++를 수행하므로 num = 0
※ && 연산할 때, 앞 부분이 거짓일 경우 뒷 부분은 수행하지 않는다
'C' 카테고리의 다른 글
진법변환, 비트연산, 매크로 (0) | 2023.03.13 |
---|---|
출력형식 (0) | 2023.03.10 |
산술연산자, 연산자 우선순위 (0) | 2023.03.08 |
변수의 종류와 유효범위 (0) | 2023.03.08 |
컴파일러, 인터프리터 (0) | 2023.03.08 |