问题先放在这,可能是数据类型??的锅。
distance应该是1,但是代码如下才会输出正确结果。
#include <stdio.h>
#include <math.h>
#include <stdlib.h>
int main()
{
double a,b,x,y,m,n;
double distance;
scanf("%lf,&lf",&a,&b);
//x=fabs(a);
//y=fabs(b);
if(a<0)
x=-a;
else x=a;
if(b<0)
y=-b;
else y=b;
//m=pow((x-2),2);
//n=pow((y-2),2);
m=(x-2)*(x-2);
n=(y-2)*(y-2);
//distance = sqrt(m+n);
distance = (m+n);
if(distance<=2)
{printf("10");}
else if(distance>2)
{printf("0");}
return 0;
}
事实证明这几个函数都没问题。这我真的想不通