定义一个表示平面直角坐标系下点坐标的结构体类型,输入两个点的坐标,存放在所定义的结构体类型变量中,调用一个自定义函数计算并输出这两个点的中点坐标。
时间: 2024-12-23 10:26:26 浏览: 8
在C++中,你可以创建一个结构体(struct)来表示二维平面上的一个点,然后定义两个这样的结构体变量,存储两点的坐标。接下来,我们可以定义一个自定义函数来计算这两个点的中点坐标。以下是如何实现这个功能的代码:
```cpp
#include <iostream>
// 定义结构体 Point,表示二维平面上的一个点
struct Point {
double x;
double y;
};
// 自定义函数,计算并返回两个点的中点坐标
Point calculateMidpoint(const Point& p1, const Point& p2) {
// 中点的x坐标为两个点x坐标的平均值
double midX = (p1.x + p2.x) / 2.0;
// 中点的y坐标同理
double midY = (p1.y + p2.y) / 2.0;
return {midX, midY}; // 返回一个新的Point对象表示中点
}
int main() {
// 输入第一个点的坐标
std::cout << "Enter the coordinates of point 1 (x, y): ";
double x1, y1;
std::cin >> x1 >> y1;
// 输入第二个点的坐标
std::cout << "Enter the coordinates of point 2 (x, y): ";
double x2, y2;
std::cin >> x2 >> y2;
// 创建点的结构体实例
Point point1{x1, y1};
Point point2{x2, y2};
// 计算并输出中点坐标
Point midpoint = calculateMidpoint(point1, point2);
std::cout << "The midpoint between points is (" << midpoint.x << ", " << midpoint.y << ").\n";
return 0;
}
```
在这个例子中,`calculateMidpoint`函数接收两个`Point`类型的参数,计算它们的均值并返回一个新的`Point`对象。在`main`函数里,我们从用户那里获取两点的坐标,存储在相应的结构体变量中,然后调用`calculateMidpoint`函数来得到中点坐标。
阅读全文