사이먼's 코딩노트
[C언어] 연산자 / 조건문(if, else if, else) 본문
[연산자]
[사칙연산]
- + : 더하기
- - : 빼기
- * : 곱하기
- / : 나누기
[논리연산]
- == : 같다
- != : 다르다
- > : 크다(초과)
- < : 작다(미만)
- >= : 크거나 같다(이상)
- <= : 작거나 같다(이하)
- && : 그리고(and)
- || : 또는(or)
[연산자 우선순위]
- 우선순위가 높은 것이 먼저 실행된다.
- 사칙연산자가 논리연산자보다 우선순위가 높다.
- 곱하기와 나누기는 다른 사칙연산자 보다 우선순위가 높다.
- &&와 ||는 다른 논리 연산자보다 우선순위가 낮다.
- 앞에 있는 것이 먼저 실행된다.
[증감 연산자]
- i++; 는 i의 값을 1 증가시킨다.
- i--; 는 i의 값을 1 감소시킨다.
- i = i + 2; 는 i의 값을 2 증가시킨다.
- i += 2; 는 i의 값을 2 증가시킨다. (위와 같은 표현)
- i = i - 2; 는 i의 값을 2 감소시킨다.
- i -= 2; 는 i의 값을 2 감소시킨다. (위와 같은 표현)
[조건문]
- C언어에서는 1/0으로 참/거짓을 분별한다.
- 조건문의 기본 구조 및 예시는 아래와 같다.
#include <stdio.h>
int main(void) {
int age = 10;
if(age < 20) {
printf("미성년입니다.");
}
return 0;
}
- 기본 구조 if()에서 ( ) 괄호 안에 조건을 써놓고 조건이 참일 때 { } 안에 작성한 문법들이 동작한다.
- 위 예시에서는 age라는 변수에 10을 넣고 조건문을 통해 미성년인지 아닌지를 판별할 수 있다.
- 만약 age가 20이라는 숫자 미만이면 "미성년입니다."라는 출력문을 출력하게 된다.
#include <stdio.h>
int main(void) {
int age = 30;
if(age < 20) {
printf("미성년입니다.");
}
else if (age >= 20) {
prinf("성인입니다.");
}
return 0;
}
- if를 하나씩 쓰게되면 프로그램 상 위에서 아래로 내려가면서 전부 체크를 하게 되어있다.
- 프로그램의 효율성이나 실행 속도를 빠르게하기 위해서는 상황에 맞춰 조건문을 하나로 묶어주는 것이 좋다.
- 하나로 묶는다는 의미는 최초 작성한 조건문 if 아래에 else if를 작성하는 것이다.
- 정해진 조건 중에 if나 else if에 참이 없을 경우, 가장 마지막에 예외를 막기위한 else 조건문을 작성한다.
- else는 조건부를 작성하지 않아도 된다.
- if문 안에 if문을 작성하는 것도 가능하다.
#include <stdio.h>
int main(void) {
int age = 9;
if(age <= 10 || age >= 60) {
printf("마트 할인 대상입니다.");
}
else {
printf("할인 대상자가 아닙니다.");
}
return 0;
}
- 연산자 중 &&는 and(그리고)의 의미로 조건이 모두 만족해야 동작한다.
- 연산자 중 ||는 or(~이거나)의 의미로 조건이 하나라도 만족하면 동작한다.
- 아래는 10살 이하 또는 60살 이상이면 마트의 할인 대상이다라는 조건문을 작성한 예시이다.
반응형
'C언어' 카테고리의 다른 글
[C언어] 함수 문제풀이(1) (0) | 2024.01.24 |
---|---|
[C언어] 함수 (1) | 2024.01.23 |
[C언어] 반복문(for, while) (0) | 2024.01.19 |
[C언어] 변수 (0) | 2024.01.17 |
[C언어] C언어 기본구조 / printf (0) | 2024.01.16 |