if문은 선택문의 가장 간단한 현태로, 주어진 조건이 만족할 경우에만 실행된다.
if (논리식) 명령문
if는 예약어이며 반드시 소문자로 사용한다.
논리식은 항상 논리값인 참 또는 거짓을 가지며 괄호로 둘러쌓인다. 명령문은 하나의 명령문일 수도 있고 여러 개의 명령문으로 이루어진 복합문일 수도 있다.
예)
#include <stdio.h>
int main()
{
int num1, num2, bigger;
printf("Please enter two integers: ");
scanf("%d %d", &num1, &num2);
bigger=num1;
if(num1<num2) bigger=num2;
printf("The larger number is : %3d\n", bigger);
return 0;
}
실행결과
Please enter two integer: 12 25
The larger number is : 25
- bigger = num2;
if문내의 명령문으로 논리식의 값이 참이므로 실행된다. 만약 논리식의 값이 거짓일 경우에는 실행되지 않는다. 이 경우 if문은 하나의 명령문으로 구성되어 있다. 만약if문이 여러 개의 명령문으로 구성된 복합문일 경우에는 반드시 중괄호{}로 표시해야 한다.
- printf("The larger number is %3d\n", bigger);
if문의 일부가 아니기 때문에 if문 내의 조건과 관계없이 실행된다.
예)
#include <stdio.h>
int main()
{
int num1, num2, bigger, smaller;
printf("Please enter two integer: ");
scanf("%d %d", &num1, &num2);
bigger=num1;
smaller=num2;
if(num1<num2)
{
bigger=num2;
smaller=num1;
}
printf("%d is larger than %3d\n", bigger, smaller);
return 0;
}
실행결과
Please enter two integer: 25 33
33 is larger than 25
실행결과
Please enter two integer: 55 12
55 is larger than 12
만약 num1이 num2보다 클 경우 if문은 수행되지 않는다. if문내의 명령문이 복합문일 경우에는 반드시 중괄호로 표시해 주어야 한다.
'C 언어 > 임베디드 C' 카테고리의 다른 글
if-else문 (0) | 2011.04.04 |
---|---|
플로우차트(흐름도) (0) | 2011.04.04 |
확장문자(escape sequence) (0) | 2011.03.30 |
ASCII(아스키 코드) (0) | 2011.03.30 |
실수 저장방식 (0) | 2011.03.29 |