⑴ c语言求两个字母之间的距离
double 型输入\输出为 %lf。
代码:
#include <stdio.h>
#include <math.h>
int main()
{
double x1,y1,x2,y2,l;
printf("请分别输入x1 y1 x2 y2:\n") ;
scanf("%lf%lf%lf%lf",&x1,&y1,&x2,&y2);
l=sqrt((x1-x2)*(x1-x2)+(y1-y2)*(y1-y2));
printf("答案为%lf\n",l);
}
⑵ 用c语言计算两点间的距离
#include <math.h>
#include <stdio.h>
void main()
{
float x1, y1, x2, y2;
float d;
printf("请输入x1,y1,x2,y2,用空格隔开: ");
scanf("%f %f %f %f", &x1, &y1, &x2, &y2);
d = sqrtf((x2 - x1) * (x2 - x1) +(y2 - y1) * (y2 - y1));
printf("两点间的距离为%.2f", d);
}
(2)c语言一个两元素的距离扩展阅读:
c语言的基本运算的注意事项
一、运算顺序
1、算术表达式
用算术运算符将数据连接起来的式子,称为“算术表达式”。比如a + b、10 * 5等。如果表达式比较复杂的话,那么就要注意一下它的运算顺序。表达式的运算顺序是按照运算符的结合方向和优先级进行的。
2、结合方向
算术运算符的结合方向是从左到右。例如表达式2+3+4,先计算2+3。
3、 优先级
优先级越高,就越先进行运算,当优先级相同时,参照结合方向。下面是算术运算符的优先级排序:
负值运算符(-)>乘(*)、除(/)、模(%)运算符>加(+)、减(-)运算符
例如表达式4+5*8/-2的计算顺序为:-、*、/、+,最后的结果是-16
4、小括号
如果需要先计算优先级低的可以使用小括号()括住,小括号的优先级是最高的!
例如4+5*8-2默认的计算顺序是:*、+、-
如果想先执行加法运算,就可以这样写:(4+5)*8-2,最后的结果都是不一样的。
二、关系运算符的使用注意
1、关系运算符中==、!=的优先级相等,<、<=、>、>=的优先级相等,且前者的优先级低于后者
例如2==3>1 :先算3>1,条件成立,结果为1。再计算2==1,条件不成立,结果为0。因此2==3>1的结果为0。
2、关系运算符的结合方向为“从左往右”
例如4>3>2 :先算4>3,条件成立,结果为1。再与2比较,即1>2,条件不成立,结果为0。因此4>3>2的结果为0。
3、关系运算符的优先级小于算术运算符
例如3+4>8-2 :先计算3+4,结果为7。再计算8-2,结果为6。最后计算7>6,条件成立,结果为1。因此3+4>8-2的结果为1。
⑶ c语言求两个坐标的距离
需要包含数学库文件。然后使用下面的公式计算距离。
d=sqrt((x2-x1)*(x2-x1)+(y2-y1)*(y2-y1));
以上涉及的变量都采用double型。
⑷ C语言求两点间距离
#include <math.h>
#include <stdio.h>
void main()
{
float x1, y1, x2, y2;
float d;
printf("请输入x1,y1,x2,y2,用空格隔开: ");
scanf("%f %f %f %f", &x1, &y1, &x2, &y2);
d = sqrtf((x2 - x1) * (x2 - x1) +(y2 - y1) * (y2 - y1));
printf("两点间的距离为%.2f", d);
}
(4)c语言一个两元素的距离扩展阅读:
c语言的基本运算的注意事项
一、运算顺序
1、算术表达式
用算术运算符将数据连接起来的式子,称为“算术表达式”。比如a + b、10 * 5等。如果表达式比较复杂的话,那么就要注意一下它的运算顺序。表达式的运算顺序是按照运算符的结合方向和优先级进行的。
2、结合方向
算术运算符的结合方向是从左到右。例如表达式2+3+4,先计算2+3。
3、 优先级
优先级越高,就越先进行运算,当优先级相同时,参照结合方向。下面是算术运算符的优先级排序:
负值运算符(-)>乘(*)、除(/)、模(%)运算符>加(+)、减(-)运算符
例如表达式4+5*8/-2的计算顺序为:-、*、/、+,最后的结果是-16
4、小括号
如果需要先计算优先级低的可以使用小括号()括住,小括号的优先级是最高的!
例如4+5*8-2默认的计算顺序是:*、+、-
如果想先执行加法运算,就可以这样写:(4+5)*8-2,最后的结果都是不一样的。
二、关系运算符的使用注意
1、关系运算符中==、!=的优先级相等,<、<=、>、>=的优先级相等,且前者的优先级低于后者
例如2==3>1 :先算3>1,条件成立,结果为1。再计算2==1,条件不成立,结果为0。因此2==3>1的结果为0。
2、关系运算符的结合方向为“从左往右”
例如4>3>2 :先算4>3,条件成立,结果为1。再与2比较,即1>2,条件不成立,结果为0。因此4>3>2的结果为0。
3、关系运算符的优先级小于算术运算符
例如3+4>8-2 :先计算3+4,结果为7。再计算8-2,结果为6。最后计算7>6,条件成立,结果为1。因此3+4>8-2的结果为1。
⑸ 为什么C语言,数组 相邻两个元素地址相减,输出结果和显示结果不同。
C语言中两个地址相减指的是两个地址间数组元素的个数,而不是间隔的字节数。
比如
int a[10],*p;
p=a;
a[1]-a[0] 值为1,而不是4
p+4 指的是p指针所指单元的后面第4个元素,即a[4],而不是a[1]。
⑹ C语言求两个点之间的距离问题
double 型输入\输出为 %lf。
代码:
#include <stdio.h>
#include <math.h>
int main()
{
double x1,y1,x2,y2,l;
printf("请分别输入x1 y1 x2 y2:\n") ;
scanf("%lf%lf%lf%lf",&x1,&y1,&x2,&y2);
l=sqrt((x1-x2)*(x1-x2)+(y1-y2)*(y1-y2));
printf("答案为%lf\n",l);
}
⑺ c语言关于求“已知坐标的两点之间距离的距离”的问题
#include<stdio.h>
#include<math.h>
int main()
{
int x,x1,y,y1;
printf("输入第一个点坐标:如3 4\n");
scanf("%d %d",&x,&y);
printf("输入第一儿个点坐标:如5 6\n");
scanf("%d%d",&x1,&y1);
printf("(%d,%d)与(%d,%d)的距离是:%.2f\n",x,y,x1,y1,sqrt(pow((x-x1),2)+pow((y-y1),2)));
return 0;
}
⑻ 一个C语言题 int a[30]中,相邻两元素的地址相差多少 谢谢大神解答!:)
每个元素都是int型嘛;又是连续的;int长度为4 啊;。
⑼ 用C语言编写一个程序:定义一个点的坐标,然后定义两个点,求这两个点间的距离。
#include<stdio.h>
#include<math.h>
structPoint
{
doublex,y;
};
/**.*/
doubledistance(conststructPoint*a,conststructPoint*b)
{
returnsqrt((a->x-b->x)*(a->x-b->x)+(a->y-b->y)*(a->y-b->y));
}
intmain()
{
structPointa,b;
printf("Pleaseinputthefirstpoint:");
scanf("%lf%lf",&a.x,&a.y);
printf("Pleaseinputthesecondpoint:");
scanf("%lf%lf",&b.x,&b.y);
printf("Thedistanceofthetwopointis%f. ",distance(&a,&b));
return0;
}
说明:
1、distance() 函数的两个参数 const struct Point *a 和 b 使用了 const 修饰,是表示 a 和 b 在函数执行过程中不会被修改;这样即使函数体内部写错,修改了 a 和 b 的值,编译也不会通过。
2、对 double,scanf 用 %lf,printf 用 %f。
以上。
⑽ c语言:编写一个c程序,输入两点坐标,求这两点的距离
声明x1、y1、x2、y2浮点型变量为点p1和p2的座标,输入数值后直接由公式√(x1-x2)^2+(y1-y2)^2求出。代码如下:
#include"stdio.h"
#include"math.h"//调用sqrt需要包含此文件
intmain(intargc,char*argv[]){
doublex1,y1,x2,y2;
printf("... ");
scanf("%lf%lf%lf%lf",&x1,&y1,&x2,&y2);//输入点座标
printf("Thedistance(p1(%g,%g)top2(%g,%g))is",x1,y1,x2,y2);
printf("%g ",sqrt((x1-=x2)*x1+(y1-=y2)*y1));//直接用公式求结果
return0;
}
运行样例如下: