1 개념
1) 정의
→ C 표준 라이브러리에서 수학적 계산을 위한 함수들을 제공하는 헤더 파일
2) 역할
→ 삼각함수, 거듭제곱, 로그, 절댓값 등 다양한 수학 연산 기능을 제공
3) 사용법
#include <math.h>
4) GCC 기준 컴파일 옵션
→ 수학 라이브러리를 명시적으로 링크
gcc program.c -lm
5) 주의사항
→ 대부분의 수학 함수는 double을 반환하므로, 변수 선언도 double형으로 하는 것이 좋음
→ 삼각 함수의 입력값은 라디안 단위이므로, 각도를 사용할 경우 반드시 라디안으로 변환
→ GCC 사용 시 -lm 옵션 필수
2 sqrt()
→ 제곱근 함수이며, x는 0 또는 양수일 때 x의 제곱근을 반환
double sqrt(double x);
1-1 코드
#include <stdio.h>
#include <math.h>
int main() {
double num = 25.0;
printf("%.2f의 제곱근은 %.2f\n", num, sqrt(num));
return 0;
}
1-1 결과
3 pow()
→ 거듭제곱 함수이며, base를 exponent만큼 거듭제곱한 결과를 반환
double pow(double base, double exponent);
2-1 코드
#include <stdio.h>
#include <math.h>
int main() {
printf("2의 3제곱은 %.2f\n", pow(2.0, 3.0));
return 0;
}
2-1 결과
4 fabs()
→ 절댓값 함수이며, x의 절댓값을 반환
double fabs(double x);
3-1 코드
#include <stdio.h>
#include <math.h>
int main() {
printf("-12.5의 절댓값은 %.2f\n", fabs(-12.5));
return 0;
}
3-1 결과
5 sin(), cos(), tan()
→ 삼각함수이며, 각각 사인, 코사인, 탄젠트를 반환
→ 각도를 라디안으로 변환 후 사용
4-1 코드
#include <stdio.h>
#include <math.h>
#define PI 3.14
int main() {
double degree = 90.0;
double radian = degree * PI / 180.0;
printf("sin(%.2f도): %.2f\n", degree, sin(radian));
printf("cos(%.2f도): %.2f\n", degree, cos(radian));
printf("tan(%.2f도): %.2f\n", 45.0, tan(45.0 * PI / 180.0));
return 0;
}
4-1 결과
6 ceil(), floor(), round()
→ 각각 올림, 내림, 반올림을 반환
5-1 코드
#include <stdio.h>
#include <math.h>
int main() {
printf("ceil(5.5) = %.2f\n", ceil(5.5));
printf("floor(5.5) = %.2f\n", floor(5.5));
printf("round(5.5) = %.2f\n", round(5.5));
return 0;
}
5-1 결과
7 log(), log10()
→ 각각 자연로그와 상용로그를 반환
6-1 코드
#include <stdio.h>
#include <math.h>
int main() {
double num = 100.0;
printf("자연로그(log): %.2f\n", log(num));
printf("상용로그(log10): %.2f\n", log10(num));
return 0;
}
6-1 결과
C언어 math.h에 대해 더 상세한 설명과 예시를 알고 싶은 분들은 아래 링크로 접속
☞ https://m.blog.naver.com/math717/223697282021
C언어의 다른 기능 혹은 다른 프로그래밍 언어에 대해 알고 싶은 분들은 아래 링크에 접속하여 원하는 링크에 접속
'C언어 > 표준라이브러리' 카테고리의 다른 글
C언어 시간 처리 완전 정리: time.h 사용법, 시간 출력, 측정, 딜레이까지 (0) | 2025.05.30 |
---|---|
C 언어 문자 함수 쉽게 배우기 — isdigit부터 toupper까지 예제 중심 정리 (0) | 2025.05.29 |
C 언어 string.h 핵심 함수 정리 – 문자열 검색, 분리, 메모리 함수 예제까지 (1) | 2025.05.28 |
C언어 stdlib.h 함수 정리 - exit, rand, atoi, strtol 해설 (0) | 2025.05.25 |
C언어 입출력 함수 정리 | printf, scanf, 파일 입출력까지 한 번에 (0) | 2025.05.24 |