#include <stdio.h>
#include <string.h>
#include <math.h> // sqrt 函数

// 键盘输入 2 个点的坐标，计算两点之间的距离 (欧氏距离，勾股定理)
// 还有一种距离叫 曼哈顿距离，两点之间的距离是两点在坐标系上的横纵坐标的距离之和
// 欧式距离公式: d = sqrt((x1-x2)^2 + (y1-y2)^2)
// 曼哈顿距离公式: d = |x1-x2| + |y1-y2|
// gps 的距离使用的是曼哈顿距离

// 定义结构体
struct Point
{
    int x;
    int y;
};

int main()
{
    struct Point twoPoint[2];
    memset(&twoPoint[0], 0, sizeof(twoPoint));
    memset(&twoPoint[1], 0, sizeof(twoPoint));

    for (int i = 0; i < 2; i++)
    {
        printf("请输入第%d个点的坐标: ", i + 1);
        scanf("%d %d", &twoPoint[i].x, &twoPoint[i].y);
    }

    // 计算两点之间的距离
    // sqrt 函数在 math.h 头文件中
    // pow 函数在 math.h 头文件中，求幂函数，pow(x, y) 求 x 的 y 次方
    float d1 = sqrt(pow(twoPoint[0].x - twoPoint[1].x, 2) + pow(twoPoint[0].y - twoPoint[1].y, 2));
    printf("两点之间的距离是: %.2f\n", d1);

    return 0;
}