C 언어 - if ~ else if ~ else

컴퓨터/C

728x90
반응형

조건문 if ~elseif ~else문

C언어에서 if 조건문을 확장하는 마지막 형태의 문법입니다. 지난 포스트의 마지막 예제처럼 여러 가지 조건으로 방향이 나눠지는 경우에 효율적으로 소스코드를 관리할 수 있게 됩니다. 

 

if ~elseif ~else문의 사용법

  • else if는 반드시 띄어쓰기를 해야 됩니다.
  • else if의 경우 원하는 만큼 확장이 가능 합니다.
  • 문법의 마지막에 항상 else구문이 필요합니다.
  • if와 else if에는 진입 여부를 판단하는 조건을 반드시 적어 줘야 합니다.

활용해보기 

예제 1) 지난 포스트 예제 변경해 보기.

 

#include <stdio.h>

int main()
{
	int input = 2;

	if (input == 1 || input == 2 || input == 3)
	{
		if(input == 1)
			printf("공격을 시작 합니다.\n");
		if (input == 2)
			printf("수비를 시작 합니다.\n");
		if (input == 3)
			printf("후퇴 합니다.\n");
	}
	else
		printf("잘못된 값을 입력했습니다.\n");
	
}

 

결과 보기

더보기
#include <stdio.h>

int main()
{
	int input = 2;

	if (input == 1) 
	{
		printf("공격을 시작 합니다.\n");
	}
	else if (input == 2)
	{
		printf("수비를 시작 합니다.\n");
	}
	else if (input == 3)
	{
		printf("후퇴 합니다\n");
	}
	else
		printf("잘못된 값을 입력했습니다.\n");
	
}

조건문을 활용하여 구조를 잡아보는 연습을 해보도록 합시다.

 

문제 간단한 메뉴 인터페이스 만들어 보기 

 

  • 변수는 int형 변수 main_menu 만들기
  • 1. 메인 화면 출력하기
    -플레이어 육성 게임-
    1.  불러오기
    2.  새로 하기
    3.  종료하기
  • 변수는 int형 변수 sub_menu 만들기
  • 1번 또는 2번 선택 시 (각각의 구간 진입시 - 해당 번호와 동일하게 출력)
    1. 정보 확인하기
    2. 사냥터로 이동하기
    3. 상점으로 이동하기
    4. 메인화면으로 이동하기
    5. 게임 종료하기

  • 3번 선택시 (종료하기 출력)

아직 기본 입력에 대하여 모르는 상태입니다.  지금은 조건문에 구조를 만드는 것에 좀 더 집중해 보세요.

 

예시 1 ) main_menu = 1 / sub_menu =2 일시 결과

예시 2) main_menu = 3 / sub_menu =2 일시 결과

예시 3) main_menu = 2 / sub_menu =5 일시 결과

지금까지 배운 내용들을 활용해서 위의 예시처럼 구현되도록 소스코드를 만들어 보세요!

 

결과 보기

더보기
#include <stdio.h>

int main()
{
	int main_menu =2;
	int sub_menu = 5;

	printf("플레이어 육성 게임\n");
	printf("1.불러오기\n");
	printf("2.새로하기\n");
	printf("3.종료\n");

	if (main_menu == 1 || main_menu == 2)
	{
		printf("1.정보 확인하기\n");
		printf("2.사냥터로 이동\n");
		printf("3.상점으로 이동\n");
		printf("4.메인화면으로 이동\n");
		printf("5.게임 종료하기\n");
		if (sub_menu == 1)
		{
			printf("정보 확인메뉴에 들어왔습니다.\n");
		}
		else if (sub_menu == 2)
		{
			printf("사냥터 이동메뉴에 들어왔습니다.\n");
		}
		else if (sub_menu == 3)
		{
			printf("상점 이동 메뉴에 들어왔습니다.\n");
		}
		else if (sub_menu == 4)
		{
			printf("메인 화면으로 이동 메뉴에 들어왔습니다.\n");
		}
		else
		{
			printf("게임 종료하기 메뉴에 들어왔습니다.\n");
		}
	}
	else
	{
		printf("게임을 종료 합니다.");
	}
}

이처럼 프로그램의 구조와 흐름을 조건문을 혼합하여 만들 수 있습니다.

다음 글에서는 기본 입력을 배워보고 변수를 제어하여 조금 더 해당 소스코드를 유연하게 동작시켜보도록 하겠습니다.

728x90
반응형

'컴퓨터 > C' 카테고리의 다른 글

C 언어 - 조건문 switch  (0) 2021.06.02
C 언어 - 표준 입력  (0) 2021.06.01
C 언어 - 조건문 if else  (0) 2021.05.30
C 언어 - 조건문 IF  (0) 2021.05.29
C 언어 - 표준 출력  (0) 2021.05.25

Commnet

G91개발일지

Gon91(지구일)

91년생 공학엔지니어의 개발일지

TODAY :

YESTER DAY :

TOTAL :