티스토리 뷰
목차
※if 문의 조건식
-------------------------
if(조건식)
명령문
-------------------------
위에처럼 if문안에 조건식이 참인지 거짓인지에따라 명령문이 실행되고 실행되지 않은 두가지 결정이 나오게 되는 함수이다.
※if문의 항상 성립하는 조건
if문의 조건식이 0일때
#include<stdio.h>
int main() {
if (0)
printf("문화택시");
return 0;
}
if문의 조건식이 1일때
#include<stdio.h>
int main() {
if (1)
printf("문화택시");
return 0;
}
위에처럼 if문의 조건식이 0이면 항상 거짓, 조건식이 1이면 항상 참으로 판명하게 된다.
※if문과 연산자
#include<stdio.h>
int main() {
if(1+0==1)
printf("문화택시");
if (0 * 1 == 1)
printf("고속택시");
if (1 / 0 == 1)
printf("뉴스택시");
if (1 % 1 == 1)
printf("건강택시");
return 0;
}
연산자가 if문에도 적용되어 1+0==1은 참,0*1==1은 거짓,1/0==1은 거짓,1%1==1도 거짓으로 문화택시만 출력되었다.
※if문의 비교연산자와 조건식
#include<stdio.h>
int main() {
if (1>0)
printf("문화택시");
if (0>1)
printf("고속택시");
return 0;
}
if문에는 비교연산자가 사용될 수 있어 위에처럼 1>0는 문화택시, 0>1 고속택시지만 1은 0보다 큰 수로
1>0인 조건문이 참이 되고, 0<1 조건문은 거짓이 되었기에 문화택시만 출력되었다.
※if문의 논리연산자와 조건식
&&논리연산자
#include<stdio.h>
int main() {
if (1 && 1)
printf("문화택시");
if (0 && 1)
printf("고속택시");
return 0;
}
논리연산자 &&의 성질인 둘 다 참이여야 실행되는 성질이 조건문에서도 적용되어 위에 if(1 && 1)은 둘 다 참이 되어 실행되었지만 고속택시는 if(0 && 1)은 하나가 거짓이 되어 실행되지 못했다.
||논리연산자
#include<stdio.h>
int main() {
if (1 || 1)
printf("문화택시");
if (0 || 1)
printf("고속택시");
return 0;
}
논리연산자 ||의 성질인 둘 중 하나만 참이되어도 실행되는 성질이 작용되어 위랑 똑같은 조건문이지만 둘 다 참이 2개, 1개로 둘 다 실행되게 되었다.
!논리연산자
#include<stdio.h>
int main() {
if (!1)
printf("문화택시");
if (!0)
printf("고속택시");
return 0;
}
논리연산자 !의 성질인 참이 거짓이되고 거짓이 참이 되는 성질이 적용되어 항상 참이 1이 거짓이 되었고 항상 거짓인 0이 참이되어 고속택시가 출력되었다.
※if문의 단일 명령문과 복합명령문
단일 명령문
#include<stdio.h>
int main() {
if(0)
printf("문화택시");
printf("고속택시");
return 0;
}
if절은 범위를 지정하지 않았을때는 한줄만 범위에 들어가 문화 택시는 if(0)의 범위 안에 들어가 출력이 되지 않았지만 고속택시는 범위에 들어가지않아 출력되었다.
복합 명령문
#include<stdio.h>
int main() {
if (0) {
printf("문화택시");
printf("고속택시");
}
return 0;
}
아까와 달리 범위를 {}로 지정하니 둘 다 범위안에 들어가 거짓으로 판명되어 아무것도 출력되지 않았다.
'C언어' 카테고리의 다른 글
[백준-10189]: Hook(C99)-브론즈5 (0) | 2024.04.28 |
---|---|
[백준-10172]: 개(C99)-브론즈5 (0) | 2024.04.28 |
[백준-10171]: 고양이(C99)-브론즈5 (0) | 2024.04.28 |
[백준-10170]: NFC West vs North(C99)-브론즈5 (0) | 2024.04.27 |
[백준-9654]: 나무 함대 데이터(C99)-브론즈5 (0) | 2024.04.27 |