C++ fmod() 函数使用方法及示例

C++ 库函数 <cmath>

C ++中的fmod()函数计算分子/分母的浮点余数(四舍五入)。
fmod (x, y) = x - tquote * y

其中tquote被截断,即x / y的结果(四舍五入)。

fmod()原型[从C ++ 11标准开始]

double fmod(double x, double y);
float fmod(float x, float y);
long double fmod(long double x, long double y);
double fmod(Type1 x, Type2 y); //用于其他算术类型组合的附加重载

fmod()函数接受两个参数,并返回double,float或long double类型的值。此函数在<cmath>头文件中定义。

fmod()参数

  • x:分子的值。

  • y:分母的值。

fmod()返回值

fmod()函数返回x / y的浮点余数。如果分母y为零,则fmod()返回NaN(非数字)。

示例1:fmod()如何在C ++中工作?

#include <iostream>
#include <cmath>

using namespace std;

int main()
{
    double x = 7.5, y = 2.1;
    double result = fmod(x, y);
    cout << "余数 " << x << "/" << y << " = " << result << endl;
    
    x = -17.50, y = 2.0;
    result = fmod(x, y);
    cout << "余数 " << x << "/" << y << " = " << result << endl;
    
    return 0;
}

运行该程序时,输出为:

余数 7.5/2.1 = 1.2
余数 -17.5/2 = -1.5

示例2:fmod()函数用于不同类型的参数

#include <iostream>
#include <cmath>

using namespace std;

int main()
{
    double x = 12.19, result;
    int y = -3;
    
    result = fmod(x, y);
    cout << "余数 " << x << "/" << y << " = " << result << endl;
    
    y = 0;
    result = fmod(x, y);
    cout << "余数 " << x << "/" << y << " = " << result << endl;

    return 0;
}

运行该程序时,输出为:

余数 12.19/-3 = 0.19
余数 12.19/0 = -nan

  C++ 库函数 <cmath>