我正在尝试编写一个函数来查找两个double值之间的最大值。 这是我的代码:
#include <stdio.h>
double *max(double *x, double *y)
{
double d;
if(x > y)
{
d = *x;
}
else
{
d = *y;
}
}
int main()
{
double a, b;
printf("Input two #:");
scanf("%lf%lf",a,b);
printf("max = %lf", max(&a, &b));
return 0;
}
然而,输出是这样的:
Input two #:10 9
max = 0.000000
所以我修改了代码以找到问题发生的位置。
在double *max
中,当我想显示d
的值时,存在分段错误。
我该如何解决?