c语言判断一个点在圆外还是圆内,…我用面积算得,,可是怎么排除在圆上那个点??

2025-03-07 16:37:56
推荐回答(2个)
回答1:

可以用点到圆心距离来算。
double cx,cy,r;
double x,y,d;
...
d = sqrt( (x-cx)*(x-cx) + (y-cy)*(y-cy));
if (d > r){ 内
} else if (d < r){ 外
} else {
圆周上
}

排除内,外。
因浮点数比较,难用 等于 判断,一般用 fabs(差)< eps; eps = 1e-10

回答2:

面积算的?
PI * 距离的平方 与园的面积比较?

不是有方程的么? 直接判断点到圆心的距离== 半径,就是在圆上呗.

你具体怎么写的?