반응형
1. 제어문
먼저 조건문을 알기위해서 제어문을 알아야 한다.
제어문: 프로그램의 흐름을 제어하는 문법
종류: 조건문, 반복문
2. 조건문
조건문: 조건의 결과에 따라 실행할 문장을 결정하는 문법
종류:
1) if문
2) switch문
3. if문의 구조
if(조건식){
조건식이 참일 경우 실행할 명령1;
}
-> if문의 조건식은 항상 결과값이 참 혹은 거짓으로 나오는 식
즉ㄹ 비교연산자, 3<4 && x==3, 논리연산자, 참 혹은 거짓을 의미하는 값, 0과 1이 들어갈 수 있다.
0: False
1: True
만약 자신의 나이가 10살이 넘을 때 넘는다는 사실을 알려주는 출력문을 예시로 들어보자.
#include<stdio.h>
int main(void) {
int age = 0;
printf("당신의 나이를 입력하세요 : ");
scanf_s("%d", &age);
if (age > 10) {
printf("당신은 10살보다 많습니다.\n");
}
}
만약 여기서 입력값을 10 초과하는 수를 넣는다면 if문의 출력문이 출력이 될것이다.
반대로 10보다 작은 값이 나온다면 아무것도 출력되는값이 없을 것이다.
그렇다면 10보다 작은 값이 나올때도 출력을 하고싶다면 어떻게 해야 할까?
이제 if else문에 대해서 알아보자
4. if ~ else문
if(조건식){
조건식이 참일 경우 실행할 명령1;
}
else{
위의 조건식이 거짓일 때 실행할 명령2;
}
그럼 위의 예시 그대로 10살보다 적을 때도 출력하는 문장을 만들어보자
#include<stdio.h>
int main(void) {
int age = 0;
printf("당신의 나이를 입력하세요 : ");
scanf_s("%d", &age);
if (age > 10) {
printf("당신은 10살보다 많습니다.\n"); //10초과일때 실행할 명령
}
else {
printf("당신의 나이는 10살이하입니다.\n");//10이하일때 실행할 명령
}
}
위의 코드를 실행해보면 10살초과일때는 if문의 명령이 실행이되고
반대로 10살이하일때는 if문이 거짓이므로 else문의 명령이 실행이 될것이다.
이제 조건이 두개가 아닌 여러개의 조건이 들어갈 경우를 만들어보자
5. if ~ else if ~ else문
if(조건식){
조건식이 참일 경우 실행할 명령1;
}
else if{
위의 조건식이 거짓일 때 실행할 명령2;
}
else{
바로 위 else if 의 조건식이 거짓일 때 실행할 명령3;
}
만약 여러개의 조건식을 넣고 싶다면 else if 문을 써서 조건식을 추가하면 된다.
그런데 여기서 주의해야 할것이 있다. 중간 조건문에서 else if 문이 참이면 그 다음 조건은 확인하지 않는다는 것이다.
예로 많이 나오는 학교 성적에 따른 학점을 출력하는 조건문을 확인해보자
#include<stdio.h>
int main(void) {
int score = 0; //점수
printf("당신의 점수를 입력하세요 : ");
scanf_s("%d", &score);
if (score >= 90) {
printf("당신의 학점은 A입니다");
}
else if (score >= 80) {
printf("당신의 학점은 B입니다");
}
else if (score >= 70) {
printf("당신의 학점은 C입니다");
}
else if (score >= 60) {
printf("당신의 학점은 D입니다");
}
else {
printf("당신의 학점은 F입니다");
}
}
만약 여기서 점수를 입력을 했을 때 75라고 입력을 할경우
else if(score>=70) 문에서 참이므로 "당신의 학점은 C입니다"를 출력하고 끝난다는 것이다.
그 이후의 아래 조건문은 출력하지않고 넘어간다는 것이다.
반응형
'C언어' 카테고리의 다른 글
C언어 기초- 지역변수 vs 전역변수 (0) | 2023.03.16 |
---|---|
C언어 기초- 변수(속성, 주소, 값, 이름, Const, 예약어) (0) | 2023.03.03 |
C언어 기초 - 자료형(데이터 타입 및 자료형 크기) (0) | 2023.03.03 |
C언어 기초 -scanf_s(데이터 입력, 연속 입력, 문자열 입력)와 데이터 크기 (0) | 2023.03.03 |
C언어 기초- 연산자, 연산자 우선순위 (0) | 2023.03.03 |
댓글