例51:有4个圆塔,圆心分别为(2,2)、(-2,2)、(-2,-2)、(2,-2),圆半径为1,这4个塔的高度为10cm,塔外无建筑物。今输入任一点的坐标,C语言编程求该点的建筑高度(塔外的高度为0)。
解析:此题说白了就是判断这点到各个圆心的距离,如果大于1的话证明在塔内,这是高度为10cm,否则就为0,关键是求点到各个圆心的距离。
源代码演示:
#include<stdio.h>//头文件
int main()//主函数
{
int height=10; //定义灯塔高度
float x1=2,x2=-2,x3=-2,x4=2,y1=2,y2=2,y3=-2,y4=-2;//定义坐标
float x,y,d1,d2,d3,d4;//定义坐标
printf("请输入一个点坐标(x,y):");//提示语句
scanf("%f,%f",&x,&y);//键盘输入坐标
d1=(x-x4)*(x-x4)+(y-y4)*(y-y4);//求该点到各中心点距离
d2