본문 바로가기

C언어/예습

[C언어 예습]DAY5_제어문 if, switch

제어문

 

조건문 : 조건식이 참이면 {}안의 문장을 실행한다.

 


if조건문

 

if(조건식){
            실행할 문장
             }

 

위의 조건식과 상관없이 모두 검사

if(조건식){
           실행할 문장
            }

if(조건식){
            실행할 문장

             }



if(조건식){
            실행할 문장
             }

 

위의 조건식이 거짓일 경우만 검사

else if(조건식){
                   실행할 문장
                    }

else{
      실행할 문장
      }

 


switch조건문

 

switch(변수){

case 값1:
           실행할 문장
           break; (끝나면 다음 case를 실행하지 않고 빠져나간다.)
case 값2:
          실행할 문장
          break;
case 값3:
          실행할 문장
          break;

          ...
default:
}

 


if조건문 예시1

#include <stdio.h>

void main() {

	int data1 = 0;
	int data2 = 0;

	printf("첫번째 정수, 두번째 정수\n");
	scanf_s("%d, %d", &data1 , &data2);

	if (data1 > data2) {
		printf("%d가 더 큽니다.\n", data1);
	}
	else if (data1 !=data2) {
		printf("%d가 더 큽니다.\n", data2);
	}
	else {
		printf("두 수가 같습니다.");
	}
}

if조건문 예시2 (버스카드)

#include <stdio.h>

void main() {
	//어린이 13 500원
	//청소년 19 1000원
	//성인 150 1200원

	//1. 나이를 입력받고 그 나이에 맞는 메세지 출력
	//2. 음수 혹은 150초과인 나이를 입력했을 때
	//3. "잘못입력하셨습니다." 출력하기

	int age = 0;
	int childrenMaxAge = 13;
	int teenagerMaxAge = 19;
	int adultMaxAge = 150;

	int cMoney = 500;
	int tMoney = 1000;
	int aMoney = 1200;
	int money = 10000;
	
	//fleg
	int check = 0;
	
	printf("나이를 입력해주세요.\n");
	scanf_s("%d", &age);


	if ( age <= childrenMaxAge) {
		//nested if
		if (age > 0) {
			printf("어린이 입니다.\n"); 
			money = money - cMoney;
	
		}
		else { 
			printf("잘못 입력하셨습니다.\n");
			check = 1;
		}
	}
	else if ( age <= teenagerMaxAge) {
		printf("청소년 입니다.\n");
		money = money - tMoney;

	}
	else if ( age <= adultMaxAge) {
		printf("어른 입니다.\n");
		money = money - aMoney;
	}

	else {
		printf("잘못 입력하셨습니다.\n");
		check = 1;
	}
	
	if(check == 0){
		printf("현재 잔액은 %d입니다.\n", money);
	}
}

 


switch식 예시1

#include <stdio.h>

void main() {
	//1~3까지의 수 중 입력한 값 알아 맞추기
	int num = 0;
	
	printf("1~3까지 중 하나의 정수 입력 : ");
	scanf_s("%d", &num);

	switch (num) {
		case 1:
			printf("입력하신 숫자는 %d입니다.\n\n", num);
			break;
		case 2:
			printf("입력하신 숫자는 %d입니다.\n\n", num);
			break;
		case 3:
			printf("입력하신 숫자는 %d입니다.\n\n", num);
			break;
		default:
			printf("잘못 입력하셨습니다.\n\n");

	}
}

switch식 예시2 상황극

#include <stdio.h>

void main() {
	//상황극
	//이상형이 밥을 먹으러 가자고 한다.
	int choice = 0;

	printf("나랑 밥먹으러 갈래?\n");
	printf("1.그래 가자!\n2.생각해 볼게\n3.싫어!\n4.밥은 무슨 ~ 술마시러 가자~\n\n");

	scanf_s("%d", &choice);

	switch (choice) {
	case 1:
		printf("\n넌 너무 쉬워 잘가~\n");
		break;
	case 2:
		printf("\n재수 없어~ 잘가~\n");
		break;
	case 3:
		printf("\n다른 사람 생겼니?\n");
		break;
	case 4:
		printf("\n따라와\n");
		break;
	default :
		printf("\n뭐라는 거야? 잘가~\n");
	}

}