塔c语言_C语言 | 坐标求建筑高度

“要成为绝世高手,并非一朝一夕,除非是天生武学奇才,但是这种人…万中无一”

——包租婆 这道理放在C语言学习上也一并受用。在编程方面有着天赋异禀的人毕竟是少数,我们大多数人想要从C语言小白进阶到高手,需要经历的是日积月累的学习。 那么如何学习呢? 当然是每天都练习一道C语言题目!!

2d6075e13211bfe674f6fc2283e93afc.png

作者

闫小林

白天搬砖,晚上做梦。我有故事,你有酒么?

例51:有4个圆塔,圆心分别为(2,2)、(-2,2)、(-2,-2)、(2,-2),圆半径为1,这4个塔的高度为10cm,塔外无建筑物。今输入任一点的坐标,C语言编程求该点的建筑高度(塔外的高度为0)。  解析:此题说白了就是判断这点到各个圆心的距离,如果大于1的话证明在塔内,这是高度为10cm,否则就为0,关键是求点到各个圆心的距离。 源代码演示:
#include//头文件 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=(x-x1)*(x-x1)+(y-y1)*(y-y1);//求该点到各中心点距离
  d3=(x-x2)*(x-x2)+(y-y2)*(y-y2);//求该点到各中心点距离
  d4=(x-x3)*(x-x3)+(y-y3)*(y-y3);//求该点到各中心点距离 if(d1>1&&d2>1&&d3>1&&d4>1)//判断该点是否在塔外
  {
    height=0;
  } printf("该点的高度为%d\n",height);return 0;//主函数返回值为0
}
编译运行结果如下:
请输入一个点坐标(x,y):2,2
该点的高度为10
--------------------------------
Process exited after 25.06 seconds with return value 0
请按任意键继续. . .
当该点在塔外时:
请输入一个点坐标(x,y):2,9
该点的高度为0
--------------------------------
Process exited after 3.255 seconds with return value 0
请按任意键继续. . .
以上,如果你看了觉得对你有所帮助,就给小林点个赞,分享给身边的人叭,这样小林也有更新下去的动力,跪谢各位父老乡亲啦~ C语言学习路线     C语言开发工具 C++学习路线     C#学习路线 长按关注

ebaa05e2295be4bcd5d3bcd28c4ab1af.png

学习C/C++不迷路 
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值