输入两个浮点数,打印两数之差除以两数之积的结果,用func返回计算结果


#include
float func(float x, float y);
int main()
{
    float f1;
    float f2;
    float fg;

    printf("请输入两个浮点数:");
    while(scanf("%f %f", &f1, &f2) == 2)
    {
        fg = func(f1 , f2);
        printf("结果为:%f\n" , fg);
        printf("请输入两个浮点数:");
    }

    return 0;
}
float func(float x, float y)
{
    float f1;
    float f2;
    float fl;

    fl = (f1 - f2)/(f1 * f2);

    return fl;
}

改了好几遍,返回的结果一直是NAN

  • float f1 = x;
  • float f2 = y;

img

fl 这个变量 跟 f1 很相似,这种建议换个名字,以后看代码自己都会混淆


如有帮助,欢迎点赞+采纳哈!

修改后的完整代码如下,望采纳


#include<stdio.h>
float func(float x, float y);
int main()
{
    float f1;
    float f2;
    float fg;
    printf("请输入两个浮点数:");
    while(scanf("%f %f", &f1, &f2) == 2)
    {
        fg = func(f1 , f2);
        printf("结果为:%f\n" , fg);
        printf("请输入两个浮点数:");
    }
    return 0;
}
float func(float x, float y)
{
    float f1 = x;
    float f2 = y;
    float fl;
    fl = (f1 - f2)/(f1 * f2);
    return fl;
}