조건문
조건문
if
C언어에서 if문은 영어 단어와 같이 만약 ~라면 이라는 뜻이다.
이는 제어식을 평가해 결과가 참이면 구문을 실행하고 거짓이면 멈추거나 다음으로 넘어간다.
if문은 중첩 시킬 수도 있다.
예시
int a = 10; if (a < 15) printf("정답"); //제어식이 거짓이기 때문에 정답이 출력되지 않는다.
else위의 예시에서 오답을 출력하고 싶다면 else를 넣고 구문을 넣으면 된다.
예시
int a = 10; if (a < 15) printf("정답"); else printf("오답");
이렇게 else를 넣으면 두 구문 중 하나는 무조건 실행된다.
switch문과 break
switch문은 괄호 안의 들어간 정수를 case의 레이블과 비교해 같으면 구문을 실행하는 구조다.
switch(a){
case 1 : printf("1"); break;
case 2 : printf("2"); break;
case 3 : printf("3"); break;
}
이 코드에서 a에 1이 들어간다면 case 레이블이 1인 곳으로 이어지기 때문에 1이 출력된다.
2가 들어간다면 당연히 case 레이블이 2인 곳으로 이어지고 2가 출력될 것이다.
그 후 break문을 만나 switch문이 종료된다.
연산자
등가 연산자와 관계 연산자
- ==, != 연산자: 등가 연산자
- <, >, <=, >= 연산자: 관계 연산자
== 연산자는 양쪽이 서로 같으면 1, != 연산자는 서로 다르면 1이 생성된다.
관계 연산자는 왼쪽 피연산자를 기준으로 두고 참이면 1이 생성된다.
단, 여기서 생성되는 1과 0은 정수형이다.
조건 연산자
딱히 필요하지는 않지만 알아두면 좋은 방법으로 if문에서 피연산자가 여러 개일 때 조금 더 깔끔하게 코딩할 수 있다.
a ? b : c -> a 식이 참이라면 b를 계산 거짓이라면 c를 계산한다.
a = 10;
b = 5;
a > b ? a - b : b - a;
//a가 b보다 크기때문에 참이므로 a - b를 계산한 결과값 5가 나온다.
논리 연산자
- && 연산자
- || 연산자
&& 연산자는 a && b 이렇게 사용하며 a와 b모두 참일 때만 참이다.
|| 연산자는 a || b 이렇게 사용하며 a와 b모두 거짓일 때만 거짓이다.
반응형