본문 바로가기

프로그램/C언어

【C언어】 if, if~else 구문 기초 예제

안녕하세요. C언어를 이제 막 배우기 시작하시는 분들에게 적절한 예제들입니다. if, if~else 구문으로 예제가 구성되어있습니다. 눈으로만 읽어보시면서 공부하셔도 좋고 직접 visual studio에서 작업하시면서 이해하셔도 좋을 것 같습니다.


  1. 90점 이상은 A, 80점 이상은 B, 70점 이상은 C, 70미만은 D를 출력하는 프로그램

int grade;

printf("점수를 입력하시오. (100점 만점) : \n");
scanf("%d", &grade);

if (grade >= 90)
{
     printf("당신의 점수는 %d이므로, A학점입니다.\n", grade);
}
else if (grade >= 80 && grade < 90 )
{
     printf("당신의 점수는 %d이므로, B학점입니다.\n", grade);
}
else if (grade >= 70 && grade < 80 )
{
     printf("당신의 점수는 %d이므로, C학점입니다.\n", grade);
}
else
{
     printf("당신의 점수는 %d이므로, D학점입니다.\n", grade);
}

  1. 0~9는 "한자리수", 10~99는 "두자리수", 100~999는 "3자리수"를 출력하는 프로그램 (단, 0미만의 수는 "음수", 1000이상의 수는 "모름"으로 출력하시오.)

int a;

printf("몇 자리수인지 알고 싶은 숫자를 입력하시오. : ");
scanf("%d", &a);

if (a < 0)
{
     printf("음수\n");
}
else if (a >= 0 && a <= 9)
{
     printf("한자리수\n");
}
else if (a >= 10 && a <= 99)
{
     printf("두자리수\n");
}
else if (a >= 100 && a <= 999)
{
     printf("세자리수\n");
}
else
{
     printf("모름\n");
     printf("0~999 사이의 숫자를 입력하십시오.\n");
}

  1. +,-,/,* 계산하는 간단한 프로그램

int a, b, c;

printf("하고자하는 연산을 선택하시오. (+:1, -:2, /:3, *:4) : \n");
scanf("%d", &a);

printf("두 개의 피연산자를 입력하시오. (예 5,3) : \n");
scanf("%d,%d", b, c);

if (a == 1)
{
     printf("%d와 %d의 합은 %d입니다.\n", b, c, b+c);
}
else if (a ==2)
     printf("%d와 %d의 차는 %d입니다.\n", b, c, b-c);
     printf("%d와 %d의 차는 %d입니다.\n", c, b, c-b);
}
else if (a ==3)
{
     printf("%d에 %d를 나눈 값은 %d입니다.\n", b, c, b/c);
     printf("%d에 %d를 나눈 값은 %d입니다.\n", c, b, c/b);
}
else
{
     printf("%d와 %d를 곱한 값은 %d입니다.\n", b, c, b*c);
}

  1. 세 수의 차이를 구현하는 프로그램

void main ()
{
     float n1, n2, n3;
     float max, min;
     float difference;

     printf("세 개의 수를 입력하시오.\n");
     printf("첫 번째 수 : \n");
     scanf("%f", &n1);
     printf("두 번째 수 : \n");
     scanf("%f", &n2);
     printf("세 번째 수 : \n");
     scanf("%f", &n3);
     
     max = find_max(a,b,c);
     min = find_min(a,b,c);
     difference = max - min
     printf("가장 큰 수와 작은 수의 차이는 #f입니다.\n", difference);
}

float find_max(float a, float b, float, c)
{
     float max;

     if (a > b)
          if (a > c)
               max = a;
          else
               max = c;
     else
          max = (b > c) ? b : c;

return max;
}

float find_min(float a, float b, float c)
{
     float min = a;

     if (min > b)
          min = b;
     if (min > c)
          min = c;

return min;
}