if 문에서는 조건이 참일 경우에만 처리를 하였지만 조건이 거짓인 경우에도 처리를 하여야하는 경우도 많다.

예를 들어 온도가 25도 이상이면 가벼운 옷차림을 하고 그렇지 않으면 두꺼운 옷차림을 선택한다고 하자. 이런 경우에 사용할 수 있는 문장이 if-else문이다. 

 

흐름도는 다음과 같다.

if-else 흐름도
if-else syntax

예제를보면 다음과 같다.

/******************************************************************************

Welcome to GDB Online.
GDB online is an online compiler and debugger tool for C, C++, Python, Java, PHP, Ruby, Perl,
C#, VB, Swift, Pascal, Fortran, Haskell, Objective-C, Assembly, HTML, CSS, JS, SQLite, Prolog.
Code, Compile, Run and Debug online from anywhere in world.

*******************************************************************************/
#include <stdio.h>

void eatLunch2(void){
    int money;
    
    printf("돈이 얼마 있나요?");
    scanf("%d",&money);
    if(money>=10000) printf("돈까스를 먹는다.\n");
    else if(money>=5000) printf("짜장면을 먹는다.\n");
    else if(money>=2500) printf("라면을 먹는다.\n");
    else printf("굶는다.\n");
    
}

int isLeafYear(int year)
{
    int result;
    if(year%4==0){
        if(year%100!=0)return 1;
        else if(year%400==0) return 1;
    }
    return 0;
    
}
int main()
{
    int year;
    eatLunch2();
    printf("올해는 몇년도인가요?");
    scanf("%d",&year);
    year=isLeafYear(year);
    if(year) printf("윤년입니다.year--> %d\n",year);
    else printf("윤년이 아닙니다.\n");
    return 0;
}



 

#include <stdio.h>

int main(void)
{
    int location,sex,age;
    printf("거주지- 서울:1, 경기:2, 충남:3");
    printf("성별-남자:1,여자:2");
    printf("나이-숫자로 입력(10대 미만, 10대,20대,30대 이상으로 구분)");
    scanf("입력순서대로 적으시오(거주지,성별,나이):%d %d %d", &location,&sex,&age);
    if((location=1)&&(sex=1)&&(age<10)) printf("서울거주 10대 미만 남자");
    else if((location=1)&&(sex=1)&&(age>10&&age<20)) printf("서울거주 10대 남자");
    else if((location=1)&&(sex=1)&&(age>20&&age<30)) printf("서울거주 20대 남자");
    else if((location=1)&&(sex=1)&&(age>30)) printf("서울거주 30대 이상 냠쟈");
    else if((location=1)&&(sex=2)&&(age>10&&age<20)) printf("서울거주 10대 여자");
    else if((location=1)&&(sex=2)&&(age>20&&age<30)) printf("서울거주 20대 여자");
    else if((location=1)&&(sex=2)&&(age>30)) printf("서울거주 30대이상 여자");
    else if((location=2)&&(sex=1)&&(age>10&&age<20)) printf("경기거주 10대 남자");
    else if((location=2)&&(sex=1)&&(age>20&&age<30)) printf("경기거주 20대 남자");
    else if((location=2)&&(sex=2)&&(age>30)) printf("경기거주 30대이상 남자");
    else if((location=2)&&(sex=2)&&(age>10&&age<20)) printf("경기거주 10대 여자");
    else if((location=2)&&(sex=2)&&(age>20&&age<30)) printf("경기거주 20대 여자");
    else if((location=2)&&(sex=2)&&(age>30)) printf("경기거주 30대이상 여자");
    else if((location=3)&&(sex=1)&&(age>10&&age<20)) printf("충남거주 10대 남자");
    else if((location=3)&&(sex=1)&&(age>20&&age<30)) printf("충남거주 20대 남자");
    else if((location=3)&&(sex=1)&&(age>30)) printf("충남거주 30대이상 남자");
    else if((location=3)&&(sex=2)&&(age>10&&age<20)) printf("충남거주 10대 여자");
    else if((location=3)&&(sex=2)&&(age>20&&age<30)) printf("충남거주 20대 여자");
    else if((location=3)&&(sex=2)&&(age>30)) printf("충남거주 30대이상 여자");
    
    return 0;
    
}

 

'Computer engineering > C' 카테고리의 다른 글

반복문-While(2)  (0) 2021.05.02
반복문-While(1)  (0) 2021.05.02
If 조건문  (0) 2021.04.11
4. 대입 및 산술 연산자  (0) 2021.04.01
3. #define이란?  (0) 2021.04.01

+ Recent posts