雙精度浮點餘數 fmod()
此函式返回 x/y
除法的浮點餘數。返回的值與 x 具有相同的符號。
#include <math.h> /* for fmod() */
#include <stdio.h> /* for printf() */
int main(void)
{
double x = 10.0;
double y = 5.1;
double modulus = fmod(x, y);
printf("%lf\n", modulus); /* f is the same as lf. */
return 0;
}
輸出:
4.90000
重要: 請謹慎使用此功能,因為它可以返回由浮點值操作引起的意外值。
#include <math.h>
#include <stdio.h>
int main(void)
{
printf("%f\n", fmod(1, 0.1));
printf("%19.17f\n", fmod(1, 0.1));
return 0;
}
輸出:
0.1
0.09999999999999995