Recircle 2019. 5. 16. 01:18
4-3 if-else 문

4-2의 if문에서는 조건이 참일 경우에만 처리를 하였ㅈ만 조건이 거짓인 경우에도 처리를 하여야 하는경우가 있다. 

이때 사용하는것이 if-else문이다.

주어진 조건식을 계산하여 결과값이 참이면 if 이후의 문장을 실행한다. 거짓으로 계산되면 else이후의 문장을 실행한다.

1
2
3
4
5
6
7
8
if (number > 0)
{
    printf("양수입니다.");
}
else
{
    printf("양수가 아닙니다.");
}
cs


당연히 복합문도 사용가능하다.

1
2
3
4
5
6
7
8
9
10
if (number > 0)
{
    printf("양수입니다.");
    printf("양수라고요....");
}
else
{
    printf("양수가 아닙니다.");
    printf("양수가 아니라니깐여.");
}
cs


이러한 if-else문은 3-5에서 배웠던 조건 연산자를사용하여 표현이 가능하다.

1
2
3
(number > 0) ? printf("양수입니다.") : printf("양수가 아닙니다.");
 
bonus = ((years > 30)) ? 500 : 300);
cs


//홀수 짝수 구분 프로그램

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <stdio.h>
 
int main()
{
    int num;
 
    printf("숫자를 입력해주세요");
    scanf_s("%d"&num);
 
    if (num % 2 == 0)
        printf("짝수입니다.. \n");
    else
        printf("홀수입니다.. \n");
 
}
cs




//나눗셈을 하기 전에 분모가 0인지를 if-else문으로 검사

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <stdio.h>
 
int main()
{
    double n1, n2, n3;
 
    printf("정수를 입력하세요 :");
    scanf_s("%lf"&n1);
    printf("정수를 입력하세요 : ");
    scanf_s("%lf"&n2);
 
    if (n2 == 0)
    {
        printf("0으로 나눌 수는 없습니다. \n");
    }
    else
    {
        n3 = n1 / n2;
        printf("결과는 %lf입니다.", n3);
    }
    return 0;
 
}
cs



//윤년 검사

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <stdio.h>
 
int main()
{
    int year, result;
 
    printf("연도를 입력하세요 : ");
    scanf("%d"&year);
 
    if (((year % 4 == 0&& (year % 100 != 0)) || (year % 400 == 0))
    {
        printf("%d년은 윤년입니다.\n", year);
    }
    else
    {
        printf("%d년은 윤년이 아닙니다.\n", year);
    }
    return 0;
}
cs