10. 조건문 If - else if

2014. 2. 2. 18:59 - 루하스

조건문 If ~ else If


조건문이란?

정해진 조건이 참일때만 조건문 내의 코드를 실행하는 문법이다. if, else if, else가 존재한다.


if(A>=B)

{

1

}

if(A<B)

{

2

}

if(A>=B)

{

3

}

A>=B일경우 1과 3이 실행되며 A<B일 경우 2가 실행된다.



if(A>=B)

{

1

}

else if(A<B) 

{

2

}

else if(A>B) 

{

3

}

A>=B일경우 1이 실행되며 A<B일 경우 2가 실행된다.

else if는 위의 if나 else if가 거짓이고 자신의 조건이 참일때 실행된다.


if(A>B)

{

1

}

else if(A<B) 

{

2

}

else

{

4

}

A>B일경우 1이 실행, A<B일 경우 2가 실행, A=B일 경우 4가 실행된다.

else는 위의 모든 조건이 거짓일때 실행된다.



#include <stdio.h>


void main()

{

int num1, num2;

printf("두 수를 입력하시오(띄어쓰기 구분)\n");

printf("입력 : ");

scanf("%d %d", &num1, &num2);

if(a>b)

{

printf("%d가 %d보다 큽니다.\n", num1, num2);

}

else if(a<b)

{

printf("%d가 %d보다 작습니다.\n", num1, num2);

}

else

{

printf("%d는 %d와 같습니다.\n", num1, num2);

}

}




① int num1, num2;

☞ 변수 num1와 변수 num2 선언(=생성)한다.


② scanf("%d %d", &num1, &num2);

☞ 변수 num1와 num2에 차례대로 입력한다.


③ if(num1>num2)

☞ num1이 num2보다 클경우 참이기 때문에 실행되며 num1이 num2보다 큽니다라는 출력문이 실행된다.


 else if(num1<num2)

☞ 위의 값이 참이 아니면서 num1이 num2보다 작을경우 실행되며 num1이 num2보다 작습니다라는 출력문이 실행된다.


 else

☞ 위의 조건문들이 모두 거짓일때 실행되며 num1과 num2는 같습니다라는 출력문이 실행된다.




#include <stdio.h>


int plus(int num1, int num2);

int minus(int num1, int num2);

int time(int num1, int num2);

int divide(int num1, int num2);


int main(int argc, char** argv)

{

int select;

int num1, num2;

int result;


printf("1. 더하기\n");

printf("2. 빼기\n");

printf("3. 곱하기\n");

printf("4. 나누기\n");

printf("입력 : ");

scanf("%d", &select);


printf("두 숫자를 입력하시오.\n");

printf("입력 : ");

scanf("%d %d", &num1, &num2);


//if안에 들어갈 줄이 한줄이면(;이 한줄을 의미한다.) 중괄호를 제거해도 문제되지 않는다.

if(select==1)

result = plus(num1, num2);

else if(select==2)

result = minus(num1, num2);

else if(select==3)

result = time(num1, num2);

else if(select==4)

result = divide(num1, num2);

else

printf("메뉴를 잘못 입력하셨습니다.");


printf("\n\n");

printf("결과 = %d\n", result);

return 0;

}


int plus(int num1, int num2)

{

return num1+num2;

}

int minus(int num1, int num2)

{

return num1-num2;

}

int time(int num1, int num2)

{

return num1*num2;

}

int divide(int num1, int num2)

{

return num1/num2;

}









연습문제

1) else if와 else는 if가 없어도 잘 실행 되는가?


2) 입력 받은 값이 짝수인지 홀수인지 출력하는 프로그램을 작성하시오.

'프로그래밍 > C언어' 카테고리의 다른 글

12. 반복문 while  (0) 2014.02.03
11. 조건문 switch  (0) 2014.02.03
9. 변수(2)  (0) 2014.02.02
8. 입력함수 scanf();  (0) 2014.02.02
7. 함수  (0) 2014.02.02

다른 카테고리의 글 목록

프로그래밍/C언어 카테고리의 포스트를 톺아봅니다