# Introduction to C Libraries - math.h and More

## Introduction

C libraries provide a rich set of functions for various tasks, from mathematical calculations to file handling and more. In this guide, we'll introduce C libraries, with a focus on the `math.h` library. We'll explain the purpose of libraries, how to use them, and provide sample code to illustrate their usage.

## What Are C Libraries?

C libraries are collections of pre-written functions and definitions that can be used in C programs. They provide a way to reuse code and avoid reinventing the wheel for common tasks. The `math.h` library, for example, contains mathematical functions like square roots, trigonometric calculations, and more.

## Sample Code

Let's explore some examples of using the `math.h` library in C:

### Calculating Square Roots

``#include <stdio.h>#include <math.h>int main() {    double number = 25.0;    double square_root = sqrt(number);    printf("Square root of %.2f is %.2f\\n", number, square_root);    return 0;}    ``

### Trigonometric Calculations

``#include <stdio.h>#include <math.h>int main() {    double angle = 45.0; // Angle in degrees    double radians = angle * (M_PI / 180.0);    double sine_value = sin(radians);    double cosine_value = cos(radians);    printf("Sine of %.2f degrees: %.2f\\n", angle, sine_value);    printf("Cosine of %.2f degrees: %.2f\\n", angle, cosine_value);    return 0;}    ``

## Using C Libraries

To use C libraries in your programs, include the appropriate library header using `#include`, and then link your program with the library during compilation. For example, to use the `math.h` library, you might compile your program with:

``gcc myprogram.c -lm    ``

The `-lm` flag tells the compiler to link with the `math` library.

## Conclusion

C libraries, such as `math.h`, provide a wealth of functions to simplify and enhance your C programs. This guide introduced the concept of C libraries, explained how to use the `math.h` library, and provided sample code to demonstrate its usage. As you continue your C programming journey, you'll find libraries to be indispensable for building feature-rich and efficient applications.