# Various Functions in C

## Overview

C programming language offers a variety of functions that cater to different aspects of programming, ranging from mathematical calculations to character manipulation. This section provides an overview of various functions available in C.

## 1. **Mathematical Functions**

### a. **`sqrt` (Square Root):**

* Calculates the square root of a number.

  ```c
  #include <math.h>
  double sqrt(double x);
  ```

### b. **`pow` (Power):**

* Raises a number to the power of another.

  ```c
  #include <math.h>
  double pow(double x, double y);
  ```

### c. **`fabs` (Absolute Value for Floats):**

* Returns the absolute value of a floating-point number.

  ```c
  #include <math.h>
  double fabs(double x);
  ```

### d. **`ceil` (Ceiling Function):**

* Rounds a floating-point number to the smallest integer greater than or equal to it.

  ```c
  #include <math.h>
  double ceil(double x);
  ```

### e. **`floor` (Floor Function):**

* Rounds a floating-point number to the largest integer less than or equal to it.

  ```c
  #include <math.h>
  double floor(double x);
  ```

## 2. **String Functions**

### a. **`strlen` (String Length):**

* Returns the length of a string.

  ```c
  #include <string.h>
  size_t strlen(const char *str);
  ```

### b. **`strcpy` (String Copy):**

* Copies the contents of one string to another.

  ```c
  #include <string.h>
  char *strcpy(char *dest, const char *src);
  ```

### c. **`strcmp` (String Compare):**

* Compares two strings.

  ```c
  #include <string.h>
  int strcmp(const char *str1, const char *str2);
  ```

### d. **`strcat` (String Concatenate):**

* Concatenates two strings.

  ```c
  #include <string.h>
  char *strcat(char *dest, const char *src);
  ```

## 3. **Character Functions**

### a. **`isalpha` (Is Alphabetical):**

* Checks if a character is an alphabet.

  ```c
  #include <ctype.h>
  int isalpha(int c);
  ```

### b. **`isdigit` (Is Digit):**

* Checks if a character is a digit.

  ```c
  #include <ctype.h>
  int isdigit(int c);
  ```

### c. **`toupper` (Convert to Uppercase):**

* Converts a character to uppercase.

  ```c
  #include <ctype.h>
  int toupper(int c);
  ```

### d. **`tolower` (Convert to Lowercase):**

* Converts a character to lowercase.

  ```c
  #include <ctype.h>
  int tolower(int c);
  ```

## 4. **Input/Output Functions**

### a. **`printf` (Print Formatted):**

* Prints formatted output to the console.

  ```c
  #include <stdio.h>
  int printf(const char *format, ...);
  ```

### b. **`scanf` (Scan Formatted):**

* Reads formatted input from the console.

  ```c
  #include <stdio.h>
  int scanf(const char *format, ...);
  ```

These are just a few examples of the many functions available in C. Understanding and utilizing these functions is essential for effective C programming.

If you have specific questions or if there are additional topics you'd like to explore, feel free to ask!
