如何使用%表示浮点数?

时间:2017-05-29 20:49:20

标签: c if-statement while-loop

我正在尝试过滤用户给出的浮点数并找到其中的最大数字。但是,我一直收到错误:

  

错误:二进制%的操作数无效(有'浮动'和' int')

我已经阅读过其他论坛,告诉我们fmod函数,我如何应用一段简单的代码,我只想找到浮点数的剩余部分?

2 个答案:

答案 0 :(得分:1)

使用fmod功能(Ideone example):

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

int main(void) {
    float val = 19.3;
    int div = 2;
    printf("%f\n", fmod(val, div));
    return 0;
}

答案 1 :(得分:1)

%运算符仅适用于整数之间,因为为了生成整数商,需要整数除法。改为使用:

double remainder = fmod(arg1, arg2);