C 기본 문법 – 조건문과 반복문 – 0편: if문 완전 정복
안녕하세요, C 언어의 뼈대를 하나씩 익혀가고 있는 멋진 여러분 😊
이번에는 C 언어에서 프로그램의 흐름을 제어할 수 있는 첫 관문!
바로 조건문, 그중에서도 가장 기본적이고 핵심적인 if문에 대해 배워볼 거예요.
🎯 if문은 마치 “상황에 따라 행동을 다르게 결정하는 판단 장치” 같아요!
우리가 일상에서 “만약 비가 오면 우산을 챙긴다”는 식으로
조건에 따라 행동을 선택하듯, if문은 C 언어에서도 조건이 참이면 특정 코드를 실행해주는 도구입니다.
지금부터 아주 쉽게, 그리고 확실하게 이해할 수 있도록
비유와 예시, 다양한 응용을 통해 설명드릴게요 😊
if문이란?
조건이 **참(true)**일 때만 특정 코드 블록을 실행하는 제어문입니다.
if (조건식) {
실행할 코드;
}
📌 조건식의 결과가 0이 아니면 참,
0이면 거짓으로 판단합니다.
1. 가장 기본적인 if문 예제
#include <stdio.h>
int main() {
int score = 85;
if (score >= 80) {
printf("우수한 성적입니다!
");
}
return 0;
}
💬 위 코드는 score
가 80 이상일 때만
“우수한 성적입니다!”를 출력해요.
🧠 일상적인 표현으로 풀면:
“만약 점수가 80점 이상이면, 칭찬 문구를 출력해!”
2. if-else문
조건이 참일 때와 거짓일 때를 나눠서 처리하고 싶을 때!
if (조건식) {
조건이 참일 때 실행
} else {
조건이 거짓일 때 실행
}
예제:
int age = 17;
if (age >= 18) {
printf("성인입니다.
");
} else {
printf("미성년자입니다.
");
}
🎯 조건에 따라 다른 메시지를 출력하는 상황에서 매우 유용합니다!
3. if-else if-else 문
조건이 여러 개인 경우에는
else if
를 계속 붙일 수 있어요!
int score = 72;
if (score >= 90) {
printf("A 학점입니다.
");
} else if (score >= 80) {
printf("B 학점입니다.
");
} else if (score >= 70) {
printf("C 학점입니다.
");
} else {
printf("재시험 대상입니다.
");
}
💡 위 코드는 점수에 따라 다른 메시지를 출력하죠.
계단처럼 조건을 하나씩 검사해서 해당하는 블록만 실행됩니다!
4. 중첩 if문 (if문 안에 if문)
복잡한 조건을 계층적으로 처리하고 싶을 때 사용
int age = 20;
int hasTicket = 1;
if (age >= 18) {
if (hasTicket) {
printf("입장 가능합니다.
");
} else {
printf("티켓이 없습니다.
");
}
} else {
printf("성인이 아닙니다.
");
}
🎯 복합 조건을 여러 단계로 나눠서 처리할 수 있어요.
5. 블록 생략 가능?
if문은 한 줄일 경우 중괄호 생략 가능하지만,
가독성과 실수를 피하기 위해 가급적 중괄호 사용을 추천합니다!
if (score >= 80)
printf("잘했어요!
");
❗ 중괄호를 안 쓰면 의도하지 않은 동작이 발생할 수 있어요.
특히 여러 줄일 땐 꼭 쓰세요!
6. 논리 연산자와 함께 쓰기
여러 조건을 동시에 판단할 수 있어요!
if (age >= 18 && age <= 65) {
printf("근로 연령대입니다.
");
}
&&
는 모두 참일 때만 실행||
는 하나라도 참이면 실행
7. 삼항 연산자로 대체 가능?
int score = 95;
char *grade = (score >= 90) ? "A등급" : "B등급";
printf("%s
", grade);
단순한 if-else는 삼항 연산자로 간단히 표현 가능!
단, 복잡한 로직은 if문이 더 읽기 쉽습니다.
8. 실전 예제: 짝수/홀수 판별기
int num = 7;
if (num % 2 == 0) {
printf("짝수입니다.
");
} else {
printf("홀수입니다.
");
}
🎯
%
연산자를 활용하면 나머지 값으로 짝수/홀수 구분이 가능해요!
✅ if문 요약 정리
구조 | 설명 |
---|---|
if (조건) |
조건이 참일 때만 실행 |
if ~ else |
참과 거짓을 나눠 처리 |
if ~ else if ~ else |
여러 조건을 계단식으로 확인 |
중첩 if문 | 조건 안에 조건 |
논리 연산자 결합 | 여러 조건을 하나로 묶기 |
삼항 연산자 대체 | 간단한 분기 처리 가능 |
⚠️ if문 사용 시 주의할 점
주의사항 | 설명 |
---|---|
= 와 == 구분 |
= 는 대입, == 는 비교입니다! |
중괄호 생략 위험 | 여러 줄 실행 시 꼭 중괄호 {} 사용 |
조건식의 결과 확인 | 조건은 0(거짓)과 0이 아닌 값(참)으로 판단 |
논리 연산자 우선순위 | 괄호로 명확하게 해주는 습관 들이기 |
마무리하며 💬
조건문은 프로그램의 흐름을 “똑똑하게” 만들기 위한 핵심 도구입니다.
특히 if문
은 앞으로 배울 반복문, 함수, 포인터 등 다양한 기능들과 함께
프로그램을 입체적으로 설계하는 데 반드시 필요한 개념이에요!
🎯 오늘 확실히 익히셨다면,
여러분은 이제 “상황에 맞춰 프로그램이 반응하는 법”을 알게 되신 겁니다!
다음 시간에는 switch문을 배워서
좀 더 구조적이고 깔끔한 분기 처리를 함께 해볼게요!
그럼 오늘도 수고 많으셨고, 감사합니다!
코딩은 반복이 아닌 확신입니다 💻✨