C语言入门实战(2):求平面上任意两点之间的距离
这是《C语言入门实战》系列的第2篇。
上一篇:C语言入门实战(1):准备开发环境、快速上手main()函数
下一篇:C语言入门实战(3):秒数转换为时:分:秒
文章目录
- 题目
- 提示
- 参考代码
- 代码复盘
题目
求平面上任意两点之间的距离。
设这两个点的坐标分别为 P1(x1,y1)、P2(x2,y2)P1(x1,y1)、P2(x2,y2)P1(x1,y1)、P2(x2,y2) ,两点距离计算公式为:
∣P1P2∣=(x2−x1)2+(y2−y1)2\left | P_1P_2\right | = \sqrt{(x_2-x_1)^2 + (y_2-y_1)^2} ∣P1P2∣=(x2−x1)2+(y2−y1)2
程序运行时依次输入 x1,y1,x2,y2x1,y1,x2,y2x1,y1,x2,y2 的值,计算并输出两点距离,计算结果保留2位小数。
提示
在C语言中求平方根的函数是 sqrt(x)sqrt(x)sqrt(x) ,程序中需要要调用该函数,在程序开头加上头文件#include <math.h>
。
输入输出格式示例:
输入:2 3 8.1 6<回车>
输出:6.80
注意:要求编写顺序结构程序。
参考代码
#include <stdio.h>
#include <stdlib.h>
#include <math.h>/**
程序处理用户的输入,给用户返回处理结果(输出)
计算坐两点(x1,y1)、(x2,y2)之间的距离,结果保留2位小数
自己定义的distance函数,有4个输入,通过return返回一个float结果
*/
float distance(float x1, float y1, float x2, float y2) {float dx = x2 - x1;float dy = y2 - y1;return sqrt(dx*dx + dy*dy);
}//程序入口,主函数
int main() {// 先在栈内存中定义4个浮点数 float x1,y1,x2,y2;// 从标准输入(键盘)读取4个float值 scanf("%f %f %f %f", &x1,&y1,&x2,&y2);// 调用自己写的distance()函数,计算距离 float dist = distance(x1, y1, x2, y2);// 将浮点数dist输出到标准输出设备(屏幕)上// .2f表示,以浮点数格式,小数点后面保留2位小数 printf("%.2f", dist);return 0;
}
代码复盘
float
浮点数,可以理解为带小数点的小数(区别于整数),在输入/打印格式中以%f
进行标记。
scanf
是stdio.h
头文件中声明的函数,用于从标准输入(通常是键盘)按指定格式接收输入内容。
C语言入门实战(2):求平面上任意两点之间的距离相关推荐
- python求多叉树任意两点之间的距离
对于多叉树求两点之间的距离,最难的地方在于有没有思路,如何找到指定点的位置,以及如何去计算两个指定点之间的距离,下图是一个简单的的多叉树,从5到1的距离为2,从5到7的距离为4. 我们可以将求解两点之 ...
- JOJ2737:狼与羊的故事(求图上任意两点间的桥边)
2737: 狼与羊的故事 Result TIME Limit MEMORY Limit Run Times AC Times JUDGE 3s 65536K 53 10 Standard 村长要召开 ...
- C语言试题八十四之求空间两点之间的距离
1.题目 定义一个表示三维空间点坐标的结构类型,通过函数求空间上任意两点之间的距离. 2 .温馨提示 C语言试题汇总里可用于计算机二级C语言笔试.机试.研究生复试中C程序设计科目.帮助C语言学者打好程 ...
- C语言求空间两点之间的距离
定义一个表示三维空间点坐标的结构类型,通过函数求空间上任意两点之间的距离. 算法思想 空间内任意点的坐标有三个,分别为 x 轴方向.y 轴方向.z 轴方向,设定结构体 point,包括三个成员 x.y ...
- c语言平曲线坐标,问题描述】给定平面任意两点的坐标(x1,y1)和(x2,y2),求这两点之间的距离(保留两位小数)。...
问题描述]给定平面任意两点的坐标(x1,y1)和(x2,y2),求这两点之间的距离(保留两位小数).要求求距离的运算单独放在一个函数中,然后在main函数中调用..[输入形式]输入两点的坐标(x1,y ...
- matlab求椭圆的弧长,用MATLAB实现求椭球上任意两点的最短弧长
基于法向矢量导向的求椭球上两点的最短弧长 问题分析 求椭球上任意两点间的最短弧长用数学来推算解析解的话十分复杂,因此考虑通过使用计算机来近似求解.问题的难点在于怎样让每一步都是处在最优的状态,以及怎样 ...
- 平面上任意椭圆与点的位置关系
平面上任意椭圆与点的位置关系 问题描述 : 如上图所示,我们的目的是判断在二维空间中任意一椭圆与任意一点pi(xi,yi)p_i(x_i,y_i)pi(xi,yi)的位置关系,这样的位置关系有三 ...
- 本题要求实现一个函数,对给定平面任意两点坐标(x1,y1)和(x2,y2),求这两点之间的距离。
本题要求实现一个函数,对给定平面任意两点坐标(x1,y1)和(x2,y2),求这两点之间的距离. 函数接口定义: double dist( double x1, double y1, doub ...
- 求两点之间的距离(C++语言)
求两点之间的距离 两种思路: 第一种: 直接利用四个坐标值进行计算. 第二种: 利用结构体描绘坐标,实现对坐标的抽象描述. 此处两个函数同名,但其函数的参数不同,即函数的函数签名不同,是C++特有的函 ...
最新文章
- Eclipse、NetBeans、IntelliJ集成开发工具 Java IDE
- 安装完matlab7.0但无法运行
- hdu 1280 前m大的数 哈希
- 层次分析法(AHP)——matlab代码实现
- 字典 dictionary c# 0104
- python让你再也不为文章配图与素材发愁,让高清图片占满你的硬盘! #华为云·寻找黑马程序员#
- FPDF中文应用攻略
- 开发小程序遇协同、平台兼容难题,该如何破局?
- python类方法_Python类方法
- Codeforces Round #429 Div. 1
- 我们自研的那些Devops工具
- 阿里4万亿市值是怎样炼成的?(深度)
- 用例图之间的几种关系
- Python 网络爬虫实战:如何下载小红书去水印图片
- Snipaste截长图方法
- C++11线程的生命周期
- Comparator 实现集合中元素的比较.输入一个正整数数组,把数组里所有数字拼接起来排成一个数,打印能拼接出的所有数字中最小的一个。例如输入数组{3,32,321},则打印出这321323
- RK3399 M0 调试-启动
- 微服务--API网关
- appcan 文件下载到根目录(pdf)
热门文章
- win7怎么设置wifi
- Linux Shell - 单引号 ( ‘ )、双引号 ( “ ) 和反引号 ( ` )
- WPF RichTextBox 总结
- hdu 1689 Alien’s Necklace(bfs搜索最小奇数环)
- 【转】OpenGL基础图形编程(一)
- c语言大作业走迷宫,C语言笔记07_小游戏设计——“走迷宫”
- 机器视觉(六)——像素坐标系、图像坐标系、相机坐标系以及世界坐标系
- 正常健康人组织也有癌基因和抑癌基因突变
- BTC 安装和使用笔记
- linux设置网卡速度,linux系统下网卡通信速率修改方法