4.编写程序,使用结构体类型,输入两个坐标点,求两点之间的横向距离和纵向距离
时间: 2024-03-19 09:45:03 浏览: 178
好的,以下是 C 语言的代码实现:
```c
#include <stdio.h>
#include <math.h>
struct Point {
int x;
int y;
};
int main() {
struct Point p1, p2;
printf("请输入第一个点的坐标(x1,y1):");
scanf("%d %d", &p1.x, &p1.y);
printf("请输入第二个点的坐标(x2,y2):");
scanf("%d %d", &p2.x, &p2.y);
// 计算横向距离和纵向距离
int dx = p2.x - p1.x;
int dy = p2.y - p1.y;
// 计算两点之间的距离
double distance = sqrt(dx*dx + dy*dy);
printf("两点之间的横向距离为:%d,纵向距离为:%d,总距离为:%f\n", dx, dy, distance);
return 0;
}
```
代码中定义了一个结构体类型 `Point`,包含两个 `int` 类型的成员变量 `x` 和 `y`,用于表示一个二维坐标点。在 `main` 函数中,先分别输入两个坐标点的横纵坐标,然后计算两点之间的横向距离和纵向距离(即两点的坐标差),最后利用勾股定理计算两点之间的距离,并输出结果。
相关问题
c语言输入两个点坐标并计算两点间距离
在C语言中,你可以通过定义结构体表示二维坐标,并编写函数来计算两点之间的欧氏距离。首先,创建一个结构体`Point`,包含两个整数`x`和`y`表示横纵坐标。然后编写一个函数`distance`接受两个`Point`类型的指针作为参数,计算它们之间的距离。这里是一个简单的示例:
```c
#include <stdio.h>
#include <math.h> // 包含数学库,用于取平方根
// 定义点的结构体
typedef struct {
int x;
int y;
} Point;
// 计算两点间距离的函数
double distance(const Point* p1, const Point* p2) {
double dx = p2->x - p1->x; // 横向差值
double dy = p2->y - p1->y; // 纵向差值
return sqrt(dx * dx + dy * dy); // 使用勾股定理计算距离,sqrt()函数求平方根
}
int main() {
Point point1, point2;
printf("请输入第一个点的坐标 (x, y): ");
scanf("%d %d", &point1.x, &point1.y);
printf("请输入第二个点的坐标 (x, y): ");
scanf("%d %d", &point2.x, &point2.y);
double dist = distance(&point1, &point2);
printf("两点间的距离是: %.2lf\n", dist); // 输出距离,保留两位小数
return 0;
}
```
用c语言编写一个函数,计算两点A(x1,y1),B(x2,y2)之间的距离。计算两点距离的公式如下: dis=sqrt((x1−x2)∗(x1−x2)+(y1−y2)∗(y1−y2)),函数接口定义为:double dist(point A,point B) ;
在C语言中,你可以创建一个名为`dist`的函数来计算两点之间的欧几里得距离。首先,你需要定义一个结构体`point`来表示二维坐标点,然后实现`dist`函数。以下是详细的代码:
```c
#include <stdio.h>
#include <math.h> // 引入math库以便使用sqrt函数
// 定义 point 结构体
typedef struct {
double x;
double y;
} point;
// 计算两点间距离的函数
double dist(point A, point B) {
double dx = A.x - B.x; // 横向差值
double dy = A.y - B.y; // 纵向差值
return sqrt(dx * dx + dy * dy); // 使用欧氏距离公式
}
int main() {
// 示例两个点
point A = {2.0, 3.0};
point B = {4.0, 5.0};
// 调用 dist 函数并打印结果
printf("The distance between points A and B is %.2lf\n", dist(A, B));
return 0;
}
```
在这个例子中,`dist`函数接受两个`point`类型的参数,并返回它们之间的距离。在`main`函数中,我们创建了两个点A和B,并调用`dist`计算它们之间的距离。
阅读全文
相关推荐
![text/plain](https://img-home.csdnimg.cn/images/20250102104920.png)
![rar](https://img-home.csdnimg.cn/images/20241231044955.png)
![txt](https://img-home.csdnimg.cn/images/20241231045021.png)
![-](https://img-home.csdnimg.cn/images/20241226111658.png)
![pdf](https://img-home.csdnimg.cn/images/20241231044930.png)
![pptx](https://img-home.csdnimg.cn/images/20241231044947.png)
![zip](https://img-home.csdnimg.cn/images/20241231045053.png)
![pdf](https://img-home.csdnimg.cn/images/20241231044930.png)
![pdf](https://img-home.csdnimg.cn/images/20241231044930.png)