用C语言编写一个程序:定义一个点的坐标,然后定义两个点,求这两个点间的距离。

供稿:hz-xin.com     日期:2025-01-13
用C语言中的结构体和共用体编写一个程序:定义一个点的坐标,然后定义两个点,求这两个点间的距离。

#include
typedef struct point{
double x,y;
}p;void main()
{
p a,b;
double d;
scanf("%lf%lf",&a.x,&a.y);
scanf("%lf%lf",&b.x,&b.y);
d=sqrt((a.x-b.x)*(a.x-b.x)+(a.y-b.y)*(a.y-b.y));
printf("%lf
",d);
}

#include
#include
int main()
{
double x1,y1,x2,y2,distance;
printf("请输入第一个点的坐标:
x1=");
scanf("%lf",&x1);
printf("y1=");
scanf("%lf",&y1);
printf("请输入第二个点的坐标:
x2=");
scanf("%lf",&x2);
printf("y2=");
scanf("%lf",&y2);
distance=sqrt((x2-x1)*(x2-x1)+(y2-y1)*(y2-y1));
printf("这两点间的距离为:%lf
",distance);
return 0;
}

#include <stdio.h>
#include <math.h>

struct Point
{
    double x, y;
};

/** Calculate the distance of two points. */
double distance(const struct Point *a, const struct Point *b)
{
    return sqrt((a->x-b->x)*(a->x-b->x)+(a->y-b->y)*(a->y-b->y));
}

int main()
{
    struct Point a, b;
    printf("Please input the first point: ");
    scanf("%lf%lf", &a.x, &a.y);
    printf("Please input the second point: ");
    scanf("%lf%lf", &b.x, &b.y);
    printf("The distance of the two point is %f.
", distance(&a, &b));
    return 0;
}

说明:

1、distance() 函数的两个参数 const struct Point *a 和 b 使用了 const 修饰,是表示 a 和 b 在函数执行过程中不会被修改;这样即使函数体内部写错,修改了 a 和 b 的值,编译也不会通过。

2、对 double,scanf 用 %lf,printf 用 %f。

以上。



#include "stdio.h"
#include "math.h"
struct Point
{
double x;
double y;
}p[2];

void main()
{
double d;

printf("输入第1个点坐标x,y\n");
scanf("%lf%lf",&p[0].x,&p[0].y);
printf("输入第2个点坐标x,y\n");
scanf("%lf%lf",&p[1].x,&p[1].y);
d=sqrt((p[0].x-p[1].x)*(p[0].x-p[1].x)+(p[0].y-p[1].y)*(p[0].y-p[1].y));
printf("距离=%g",d);
}

#include<stdio.h>
#include<math.h>//包含开方函数sqrt()
double Distance(double a[],double b[])
{
return sqrt( (b[1]-a[1])*(b[1]-a[1])+(b[0]-a[0])*(b[0]-a[0]) );
}
void main()
{
double a[2],b[2];//二维数组表示2个点
double result;
printf("请输入第一个点的坐标\n");
scanf("%lf%lf",&a[0],&a[1]);
printf("请输入第二个点的坐标\n");
scanf("%lf%lf",&b[0],&b[1]);
result=Distance( a, b);
printf("距离为%f\n",result
}希望可以帮助到你

用C语言编写一个程序:定义一个点的坐标,然后定义两个点,求这两个点间...
; return 0;}说明:1、distance() 函数的两个参数 const struct Point *a 和 b 使用了 const 修饰,是表示 a 和 b 在函数执行过程中不会被修改;这样即使函数体内部写错,修改了 a 和 b 的值,编译也不会通过。2、对 double,scanf 用 %lf,printf 用 %f。以上。

用C语言编写一个随机点名程序
RN = rand() % i;while (hash[RN] == 1) { RN = rand() % i;} flag++;printf("\\n~~~\\n%s\\n%s\\n%s\\n---\\n", st[RN].sNo, st[RN].sxueNo, st[RN].sname);hash[RN] = 1;} return 0;} 在使用printf函数时,需要注意几个关键点。例如,域宽设置可以用来控制输出的宽...

编写一个程序,以笛卡尔平面上一个点为坐标输入,打印出位于哪一个象限...
int main() { int x, y;printf("请输入点的x坐标:");scanf("%d", &x printf("请输入点的y坐标:");scanf("%d", &y);if (x > 0 && y > 0) { printf("该点位于第一象限\\n");} else if (x < 0 && y > 0) { printf("该点位于第二象限\\n");} else if (x <...

c语言编写程序:定义一个变量,一个指针,建立该变量的引用。对变量进行初...
include<stdio.h> int main(){ int a; \/\/ 定义一个变量 int* ptr; \/\/ 定义一个指针 int& aa = a; \/\/ 建立变量a的引用 a = 10; \/\/ 变量a初始化为10 ptr = &a; \/\/ ptr指向了a printf("a的值为:%d\\n", a);ptr = 20; \/\/ 通过指针修改变量a的值 printf("通过指针修改...

一道c语言编程题目 请编写一个程序实现:判断平面上的某个点是否在某个...
{POINT O;double r;}CIRCLE;int incircle(POINT p,CIRCLE c1){return ((p.x-c1.O.x)*(p.x-c1.O.x)+(p.y-c1.O.y)*(p.y-c1.O.y)<=c1.r*c1.r);} int main(){POINT p1,p2;CIRCLE C;p1.x=1.0;p1.y=1.0;p2.x=-1.0;p2.y=2.0;C.O.x=0;C.O.y=0;...

一个c语言的程序题?
然后,在main()函数中定义一个头节点指针,并用它来存储整个链表 请点击输入图片描述 接下来,实现从键盘输入五个整数并将它们尾插入链表中 请点击输入图片描述 最后,实现链表中的插入和删除操作,并输出链表中的所有元素 下面是一个可行的c语言程序,该程序实现了从键盘输入五个整数并存储在链表中,...

用C语言编写一个随机点名程序
while(hash[RN]==1)/*判断有没有完成某个一个学生点名*/ RN=rand()%i;/*产生随机数*/ flag++;/*计数*/ printf("\n~~~\n%s\n%s\n%s\n---\n",st[RN].sNo,st[RN].sxueNo,st[RN].sname);/*输出学生的信息*/ hash[RN]=...

用C语言编写一个程序,求两点之间的距离
int main(){ double x1,y1,x2,y2,distance;printf("请输入第一个点的坐标:\\nx1=");scanf("%lf",&x1);printf("y1=");scanf("%lf",&y1);printf("请输入第二个点的坐标:\\nx2=");scanf("%lf",&x2);printf("y2=");scanf("%lf",&y2);distance=sqrt((x2-x1)*(x2-x1)+...

c语言“输入一个浮点数,输出它的绝对值,保留两位小数。”求解
以下是一个 C 语言程序,用于输入一个浮点数,输出它的绝对值并保留两位小数:```c include <stdio.h> include <math.h> int main() { float num, abs_num;printf("请输入一个浮点数:");scanf("%f", &num);\/\/ 计算绝对值 abs_num = fabs(num);\/\/ 输出结果并保留两位小数 printf("...

求一个能算三点共线和两点间距离的c语言程序
main(){ struct dian { float x;float y;}a,b,c;float m;int k;printf("计算两点距离请输入2,判断三点共线请按3\\n");scanf("%d",&k);if(k==2){ printf("请输入第一个点的坐标\\n");scanf("%f%f",&a.x,&a.y);printf("请输入第二个点的坐标\\n");scanf("%f%f",&b.x,...