The topic you requested is included in another documentation set. For convenience, it's displayed below. Choose Switch to see the topic in its original location.
We recommend using Visual Studio 2017

# fmod, fmodf

Visual Studio 2015

The new home for Visual Studio documentation is Visual Studio 2017 Documentation on docs.microsoft.com.

The latest version of this topic can be found at fmod, fmodf.

Calculates the floating-point remainder.

## Syntax

```double fmod(
double x,
double y
);
float fmod(
float x,
float y
);  // C++ only
long double fmod(
long double x,
long double y
);  // C++ only
float fmodf(
float x,
float y
);

```

#### Parameters

`x`, `y`
Floating-point values.

## Return Value

`fmod` returns the floating-point remainder of `x` / `y`. If the value of `y` is 0.0, `fmod` returns a quiet NaN. For information about representation of a quiet NaN by the `printf` family, see printf.

## Remarks

The `fmod` function calculates the floating-point remainder `f` of `x` / `y` such that `x` = `i` `*` `y` + `f`, where `i` is an integer, `f` has the same sign as `x`, and the absolute value of `f` is less than the absolute value of `y`.

C++ allows overloading, so you can call overloads of `fmod`. In a C program, `fmod` always takes two doubles and returns a double.

## Requirements

`fmod`, `fmodf`<math.h>

For additional compatibility information, see Compatibility in the Introduction.

## Example

```// crt_fmod.c
// This program displays a floating-point remainder.

#include <math.h>
#include <stdio.h>

int main( void )
{
double w = -10.0, x = 3.0, z;

z = fmod( w, x );
printf( "The remainder of %.2f / %.2f is %f\n", w, x, z );
}

```
```The remainder of -10.00 / 3.00 is -1.000000

```

## .NET Framework Equivalent

System::Math::IEEERemainder