728x90
오늘은 혼공 C Chapter 04 연산자 파트의 도전 실전 예제를 풀어볼 예정이다.
연산자
C언어에서의 연산자는 여러 가지 연산자가 존재한다. 대표적으로 산술 연산자, 대입 연산자, 관계 연산자, 비트 연산자, 논리 연산자 등등이 존재한다.
연산자들과 연산자의 우선순위는 아래의 표와 같다.
종류 | 우선순위 | 연산자 | 연산 방향 |
1차 연산자 | 1 | ( ) [ ] . -> | → |
단항 연산자 | 2 | - ++ -- ~ ! * & sizeof (type) | ← |
산술 연산자 |
3 | * / % | → |
4 | + - | ||
비트 이동 연산자 | 5 | << >> | |
관계 연산자 | 6 | < <= > >= | |
동등 연산자 | 7 | == != | |
비트 논리 연산자 |
8 | & | |
9 | ^ | ||
10 | | | ||
논리 연산자 |
11 | && | |
12 | || | ||
조건 연산자 | 13 | ?: | |
대입 연산자 | 14 | = += -= *= /= %= &= ^= |= <<= >>= | ← |
콤마 연산자 | 15 | , | → |
이번에 풀어 볼 도전 실전예제의 문제는 아래와 같다.
"체중과 키를 입력해 BMI를 구한 후 BMI의 값이 일정 수치 이내이면 '표준입니다.' 그렇지 않으면 '체중관리가 필요합니다'를 출력한다"
구현한 코드는 아래와 같다.
#include <stdio.h>
int main(void)
{
int kg;
double bmi, cm;
printf("몸무게(kg)와 키(cm) 입력 : ");
scanf_s("%d%lf", &kg, &cm);
bmi = kg / ((cm * 0.01) * (cm * 0.01));
if (20.0 <= bmi && bmi <= 25.0)
{
printf("표준입니다.\n");
}
else
{
printf("체중관리가 필요합니다.\n");
}
return 0;
}
몸무게(kg)는 정수형으로, BMI와 키(cm)은 실수형으로 선언을 해준 뒤 bmi 계산식을 통하여 bmi를 도출해 낸다.
특정 수치를 구하는 단계에서 연산자가 쓰이는 것을 확인할 수 있다.
BMI는 20 이상 25 미만으로 설정하였는데, &&연산자를 통하여 두 개의 조건을 모두 만족시킬 때에 if 문 내에 있는 문장들이 실행되도록 구현하였다.
만일, 일정 수치에 부합하다면 else문을 통하여 else문이 실행되도록 구현하였다.
728x90
'Language > C' 카테고리의 다른 글
혼공C : 배열, 대소문자 변환 프로그램 (2) | 2024.06.20 |
---|---|
혼공C : 함수, 도전 실전 예제 (0) | 2024.06.20 |
혼공C : 반복문, 소수 출력 프로그램 (2) | 2024.06.17 |
혼공C : 선택문, 계산기 프로그램 (0) | 2024.06.17 |