定义一个结构体类型表示平面上第一个点的坐标,并从键盘输入两个点Z1Z2的坐标,坐标值为整形数据,输出这两点之间的距离
时间: 2024-03-13 09:45:07 浏览: 135
可以使用以下代码定义结构体类型和计算两点距离的函数:
```c
#include <stdio.h>
#include <math.h>
// 定义表示平面上点的结构体类型
typedef struct Point {
int x; // x 坐标
int y; // 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 z1, z2;
printf("请输入点 Z1 的坐标:");
scanf("%d%d", &z1.x, &z1.y);
printf("请输入点 Z2 的坐标:");
scanf("%d%d", &z2.x, &z2.y);
double dist = distance(z1, z2);
printf("Z1Z2 的距离为:%lf\n", dist);
return 0;
}
```
输入格式为每行两个整数,表示一个点的坐标。输出为一个实数,表示两点之间的距离。
相关问题
定义一个结构体类型表示平面上的一个点的坐标(x,y),并从键盘输入两个点z1,z2的坐标,坐标值为整型数据,输出这两点之间的距离。
好的,这个问题是一个编程问题,我可以回答。以下是 C++ 代码实现:
```cpp
#include <iostream>
#include <cmath>
using namespace std;
// 定义结构体类型表示平面上的一个点
struct Point {
int x;
int y;
};
// 计算两点之间的距离
double distance(Point z1, Point z2) {
int dx = z1.x - z2.x;
int dy = z1.y - z2.y;
return sqrt(dx * dx + dy * dy);
}
int main() {
Point z1, z2;
cout << "请输入第一个点的坐标(x1, y1):";
cin >> z1.x >> z1.y;
cout << "请输入第二个点的坐标(x2, y2):";
cin >> z2.x >> z2.y;
double d = distance(z1, z2);
cout << "两点之间的距离是:" << d << endl;
return 0;
}
```
希望能帮到你!
C语言:定义一个结构体类型表示平面上的一个点的坐标(x,y),并从键盘输入两个点z1,z2的坐标,坐标值为整型数据,输出这两点之间的距离。 输入格式: 从键盘输入两个点z1和z2的坐标,之间用空格分隔 输出格式: 输出数据保留两位小数。
下面是C语言的代码实现:
```c
#include <stdio.h>
#include <math.h>
struct Point {
int x;
int y;
};
int main() {
struct Point z1, z2;
scanf("%d%d%d%d", &z1.x, &z1.y, &z2.x, &z2.y);
float distance = sqrt(pow(z1.x - z2.x, 2) + pow(z1.y - z2.y, 2));
printf("%.2f\n", distance);
return 0;
}
```
我们定义了一个结构体 `Point` 用于存储平面上一个点的坐标。在主函数中,通过输入两个点 `z1` 和 `z2` 的坐标,分别存储在结构体变量 `z1` 和 `z2` 中。接下来,我们使用勾股定理计算这两个点之间的距离,并输出结果。注意,我们在输出距离时保留了小数点后两位,使用了 `%.2f` 的格式化输出。
阅读全文