본문 바로가기

C언어/강의

2010년 10월 07일 목요일 ( if() else명령문


if() else 명령문
#include <stdio.h>

int main () 
{
  float cel;
  float fah;
  int icho;
  printf("현재 온도를 입력해 주세요 : ");
  scanf("%f"&cel);
  printf("섭씨(1), 화씨(2) : ");
  scanf("%d"&icho);
  
  if (icho >= 2)
  {
  cel = (cel+40)/1.8-40;
  }

  else
  {  
  fah = ((cel+40)*1.8)-40;
  } 
  printf("섭씨[%3.1f], 화씨[%3.1f] 입니다.\n", cel, fah);
  return 0;
}
값을 넣고 섭씨를 선택하면 1은 2보다 작은수이기때문에 else문을 실행후 출력한다.
2혹은 2보다 큰수를 넣으면 if문을 실행하고 else문은 실행하지않고 출력한다.
즉 비교값이 참일경우 if문 실행 거짓일경우 else문을 실행한다.

다중 if문
#include <stdio.h>

int main () 
{

  int score;
  char grade ='X';

  printf("please enter examination score: ");
  scanf("%d"&score);

  if((score <= 100)&&(score >= 90)) //100보다 작거나 같으면 참 90보다 크거나 같으면 참
  {                                 //
    grade = 'A';                    //둘다 참이면 grade='A'; 실행하고 빠져나간다.
  }                                 //둘중 하나라도 거짓이면 else if 실행
  else if((score < 90)&&(score>=80))//90보다 작으면 참 80보다 크거나 같으면 참
  {
    grade ='B';                     //둘다 참이면 grade\'B'; 실행하고 빠져나간다.
  }                                 //둘중 하나라도 거짓이면 다음 else if 실행
  else if((score<80)&&(score>=70))
  {
    grade='C';
  }
  else if((score<70)&&(score>=60))
  {
    grade='D';
  }
  else if((score<60)&&(score>=0))
  {
    grade='F';
  }
  else                                 // 위의 조건들이 모두 거짓인경우 실행
  {
    printf("wrong score\n");           // 출력후 아래 프린트로 빠져나감
  }
  printf("The grade is %c\n", grade);  // grade값 출력
  return 0;
}
위의 프로그램을 보면 score의 입력받은 값을 넣고 그 값이 100보다 작거나 같으면 참이고 90보다
크거나 같으면 참이다. 둘다 참일경우 grade='A';를 실행시키고 빠져나와 출력한다. 둘중 하나라도
거짓이면 else if 실행하여 또 비교한다. 이런식으로 계속 조건을 늘려줄수있다.
조건이 맞는값이 없을경우 else실행 출력.
예) 입력 90을 넣으면 출력값은 A가 나오고 5를 입력할경우 F가 출력된다.
    입력값이 -값이거나 100을 초과할경우 wrong score출력후 The grade is X가 같이 출력됨.