[C언어] if문 사용법 & 예제 총정리

 조건문 if문 

If문은 조건식의 결과에 따라 중괄호 { } 로 묶어놓은 블록이 실행여부가 결정되는 조건문입니다. 조건식에는 true 또는 false값을 산출할 수 있는 연산식이나 boolean변수가 올 수 있습니다. 조건식이 true면 블록을 실행하고 false면 블록을 실행하지 않습니다. C언어에서 0은 false(거짓)로 0이 아닌 나머지 값은 모두 true(참)로 인식합니다.

 

if문 문법

//문법
if(조건식){
    실행문....
}

//사용법
if(1){
    printf("if문 예제");
}

만약 조건식이 true가 될때 실행해야 할 문장이 하나밖에 없다면 중괄호 {}를 아래와 같이 생략할 수도 있습니다.

//중괄호 {} 생략
if(1)
   printf("if문 예제")

 

if문 예제

#include
int main(){
	char grade = 'A';
	int score = 80;
	
	if(grade=='A' && score>=80){
		printf("A타입 시험에 합격하셨습니다.\n");
	}
	printf("수고하셨습니다.");
}

if문예제

grade변수의 값이 A이고 score변수의 값이 80이므로 조건식 grade=='A' && score>=80이 true가 됩니다. 따라서 중괄호 블록의 실행문이 실행되어 A타입 '시험에 합격하셨습니다.' 라는 문구가 출력된 뒤 if문을 빠져나와 '수고하셨습니다.' 라는 문구를 출력하여 위와같은 결과가 나오게됩니다.

 

 if - else문 

if-else문은 if문의 조건식의 결과에 따라 조건식이 true이면 if문의 블록이 실행되고 조건식이 false이면 else문이 실행되는 조건문입니다.

 

if - else문 문법

//문법
if(조건식){
    조건식이 참(true)일때 실행될 실행문....
}else{
    조건식이 거짓(false)일때 실행될 실행문....
}

//사용법
if(0){
    printf("조건식 == 참");
}else{
    printf("조건식 == 거짓");
}

 

if - else문 예제

#include
int main(){
	char grade = 'A';
	int score = 70;
	
	if(grade=='A' && score>=80){
		printf("A타입 시험에 합격하셨습니다.\n");
	}else{
		printf("A타입 시험에 불합격하셨습니다.\n");
	}
	printf("수고하셨습니다.");
}

if-else문예제

score변수의 값이 70이므로 grade값과 상관없이 조건식 grade=='A' && score>=80이 false가 됩니다. 따라서 else의 실행문이 실행되어 A타입 '시험에 불합격하셨습니다.' 라는 문구가 출력된 뒤 if문을 빠져나와 '수고하셨습니다.' 라는 문구를 출력하여 위와같은 결과가 나오게됩니다.

 

 if - else  if - else문 

조건문이 여러개인 if문도 있습니다. 여러개의 if문을 합쳐놓았다고 생각하시면 편해요. if문 { } 중괄호 블록 끝에 else if를 붙이면 됩니다. else if문의 수에는 제한이 없으며 여러개의 조건문을 위에서부터 읽어나가 가장먼저 true가 되는 블록만 실행하고 if문을 빠져나가게되며 모든 실행조건이 맞지않는경우 else문을 실행합니다.

else if문 구조

 

if - else  if - else문 문법

//문법
if(조건식1){
    조건식1이 참(true)일때 실행될 실행문....
}else if(조건식2){
    조건식2이 참(true)일때 실행될 실행문....
}else{
    조건식이 모두 거짓(false)일때 실행될 실행문....
}

//사용법
if(true){
    printf("조건식1 == 참\n");
}else if(false){
    printf("조건식2 == 참\n");
}else{ 
    printf("조건식 == 거짓\n");
}

 

if - else  if - else문 예제

#include
int main(){
	int score = 70;
	if(score>=90){
		printf("A등급입니다.\n");
	}else if(score>=80){
		printf("B등급입니다.\n");
	}else if(score>=70){
		printf("C등급입니다.\n");
	}else if(score>=60){
		printf("D등급입니다.\n");
	}else{
		printf("F등급입니다.\n");
	}
	printf("수고하셨습니다.");
}

else-if문예제

score변수의 값이 70이므로 3번째 조건식인 score>=70에 만족하여 'C등급입니다.'라는 문구를 출력한 후 if문을 완전히 빠져나와 '수고하셨습니다.' 라는 문구를 찍어 위와같은 결과가 나오게됩니다.

댓글

Designed by JB FACTORY