fmod, fmodf
Collapse the table of content
Expand the table of content
Important This document may not represent best practices for current development, links to downloads and other resources may no longer be valid. Current recommended version can be found here. ArchiveDisclaimer

fmod, fmodf

Calculates the floating-point remainder.

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 

x, y

Floating-point values.

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.

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.


Required header

fmod, fmodf


For additional compatibility information, see Compatibility in the Introduction.

// 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
© 2015 Microsoft