[菜鸟]如何创建两个函数,其中第二个函数进行计算?

[noob]how to create two functions where second one doing the calculation?

我写了下面的代码。 它基本上输入 5 个变量(a、b、c、f_a、f_b) 并计算 f_c= f_a + (f_b-f_a)*(c-a)/(b-a)

在主函数中,我声明并扫描所有变量, 然后我计算 X,它等于 f_c.

问题是如何将 X 的计算移动到第二个函数 calculateFreezingTemp。

我试图用 5 个变量创建一个函数 f_c,失败了。

double calculateFreezingTemp(double);

int main(void)
{double a, f_a, b, f_b, c, f_c, x;

printf("Please enter the data point A\n");
scanf("%lf %lf", &a, &f_a);

printf("Please enter the data point B\n");
scanf("%lf %lf", &b, &f_b);

printf("Please enter the salinity value between %f and %f\n", a, b);
scanf("%lf", &c);

x = f_a + ((c-a)/(b-a))*(f_b-f_a);

f_c = calculateFreezingTemp(x);

printf("For salinity %f ppt, Freezing Temperature is: %f\t",c, f_c);}

double calculateFreezingTemp(double x)
{double f_c;

f_c=x;

return(f_c);

}

您可以将输入变量传递给 'calculateFreezingTemp' 函数:

f_c = calculateFreezingTemp(a, b, c, f_a, f_b)

并将计算移动到函数中:

double calculateFreezingTemp(double a, double b, double c, double f_a, double f_b)
{
    return f_a + (f_b-f_a)*(c-a)/(b-a);
}