定义一个记录平面点坐标的结构体,编写一个函数求两点距离。

用C++程序做
2024-12-27 08:57:28
推荐回答(1个)
回答1:

【C语言】
#include
#include
struct point
{
double x;
double y;
}point[2],*p1,*p2;//全局变量
double _distance()
{
p1=&point[1];
p2=&point[2];
double d;
d=sqrt(pow((p1->x-p2->x),2)+pow((p1->y-p2->y),2));
return (d);
}
void _scan()
{
int i;
for (i=0;i<2;i++)
{
scanf ("%lf%lf",&point[i].x,&point[1].y);
}
}
void main()
{
double d;
_scan();
d=_distance();
printf("两点间距离距离为%lf:",d);
printf("\n");
}

【C++】
#include
#include
using namespace std;
typedef struct Point
{
double x;
double y;
}Point;
double Distance(Point p1, Point p2)
{
return sqrt(pow((p1.x - p2.x), 2) + pow((p1.y - p2.y), 2));
}
int main()
{
Point p1, p2;
cin >> p1.x >> p1.y >> p2.x >> p2.y;
cout << "distance: " << Distance(p1, p2) << endl;
return 0;
}