[C프로그래밍] 4.1 선택 제어문

이두팔·2021년 4월 22일
0

C프로그래밍

목록 보기
3/5

오늘은 예제코드랑 결과 캡쳐이미지가 있어서 스크롤이 좀 길당

4.1. 선택 제어문

1 if문

(1) 단순 if문

  • 예제 1
#include <stdio.h>
#pragma warning(disable : 4996)
void main()
{
  int a;
  printf("정수입력(1~200) : ");
  scanf("%d", &a); // 정수를 입력받아 변수 a에 저장
  if (a < 100)     // 변수 a의 값이 100보다 크면 printf문 실행 안함
    printf("입력한 정수가 100보다 작음. \n");
  printf("a = %d", a);
}

- 예제 1 실행 결과


  • 예제 2
#include <stdio.h>
#pragma warning(disable : 4996)
int main()
{
  int a = 10, b = 10;
  printf("if문 실행 전 : a = %d, b = %d \n", a, b);
  if (a > b)
  {
    a = a + 20;
    printf("a = %d \n", a);
  }
  b = b + 20;
  printf("if문 실행 후 : a = %d, b = %d \n", a, b);
}

- 예제 2 실행 결과



(2) if~else문

  • 예제 1
#include <stdio.h>
#pragma warning(disable : 4996)
int main()
{
  int a;
  printf("정수입력(1~200) : ");
  scanf("%d", &a); // 정수를 입력받아 변수 a에 저장
  if (a < 100)     // 변수 a의 값이 100보다 작으면 아래 printf문 실행
    printf("입력한 정수(%d)가 100보다 작음. \n", a);
  else
    printf("입력한 정수(%d)가 100보다 큼. \n", a);
  printf("프로그램 종료 \n");
}

- 예제 1 실행 결과


  • 예제 2
#include <stdio.h>
#pragma warning(disable : 4996)
int main()
{
  int a;
  printf("정수를 입력하세요 : ");
  scanf("%d", &a); // 정수를 입력받아 변수 a에 저장
  if (a % 2 == 0)
  {
    // %연산 결과가 0이면 참(짝수), 1이면 거짓(홀수)
    printf("입력한 정수는 %d입니다. \n", a);
    printf("%d는(은) 짝수입니다. \n", a);
  }
  else
  {
    printf("입력한 정수는 %d입니다. \n", a);
    printf("%d는(은) 홀수입니다. \n", a);
  }
}

- 실행 결과





(3) 다중 if~else문

다음줄에 나올 4번이랑 비슷해서 생략함



(4) 다중 if~else if~else문

  • 예제
#include <stdio.h>
#pragma warning(disable : 4996)
int main()
{
  int score = 0;
  printf("성적 입력 : ");
  scanf("%d", &score); // 변수 score에 성적 입력
  if (score >= 90)
    printf("학점은 A \n");
  else if (score >= 80)
    printf("학점은 B \n");
  else if (score >= 70)
    printf("학점은 C \n");
  else if (score >= 60)
    printf("학점은 D \n");
  else
    printf("학점은 F \n");
}

- 실행 결과




2 switch문

  • 예제
#include <stdio.h>
#pragma warning(disable : 4996)
int main()
{
  enum syllable
  {
    Do,
    Re,
    Mi,
    Fa
  } tone; // enum syllable 타입의 tone 선언
  for (tone = Do; tone <= Fa; tone += 1)
  {
    switch (tone)
    {
    case Do:
      printf("도는 하얀 도라지 \n");
      break;
    case Re:
      printf("레는 둥근 레코드 \n");
      break;
    case Mi:
      printf("미는 파란 미나리 \n");
      break;
    case Fa:
      printf("파는 예쁜 파랑새 \n");
      break;
    default:
      printf("랄라라라 \n");
      break;
    }
  }
}

- 실행 결과




3 goto문

  • 예제 1
#include <stdio.h>
#pragma warning(disable : 4996)
int main()
{
  int i;
  printf("정수 입력(1~10) : ");
  scanf("%d", &i);
  if (i == 1)
    goto ONE;
  else if (i == 2)
    goto TWO;
  else
    goto EXIT;
ONE:
  printf("입력한 숫자는 1입니다. \n");
  goto EXIT;
TWO:
  printf("입력한 숫자는 2입니다. \n");
  goto EXIT;
EXIT:
  printf("프로그램을 종료합니다. \n");
}

- 예제 1 실행 결과



  • 예제 2
#include <stdio.h>
#pragma warning(disable : 4996)
int main()
{
  int i, n, c = 'A';
  while (1) // 조건에 따른 while 반복문
  {
    printf("횟수는? ");
    scanf("%d", &n);
    for (i = 1; i <= n; i++)
    {
      printf("%c", c);
      if (c == 'Q')
        goto end;
      c++;
    }
    printf("\n\n");
  }
end:
  printf("\n\n끝");
}

- 실행 결과

profile
Software Engineer

0개의 댓글