• c语言中用结构体表示点的坐标,并计算两点之间的距离


    c语言中用结构体表示点的坐标,并计算两点之间的距离

    1、

    #include <stdio.h>
    #include <math.h>
    
    #define sqr(x) ((x) * (x))
    
    typedef struct{
        double x;
        double y;
    }Point;
    
    double dist(Point p1, Point p2)  //此处没有使用结构体对象的指针作为形参,是因为不需要对传入的结构体的成员进行修改 
    {
        return sqrt(sqr(p1.x - p2.x) + sqr(p1.y - p2.y));
    }
    
    int main(void)
    {
        Point a, b;
        printf("a - x:  "); scanf("%lf", &a.x);
        printf("a - y:  "); scanf("%lf", &a.y);
        printf("b - x:  "); scanf("%lf", &b.x);
        printf("b - y:  "); scanf("%lf", &b.y);
        
        printf("distance between a and b:  %.2f
    ", dist(a, b));
        
        return 0;
    }

    #include <stdio.h>
    #include <math.h>
    
    #define sqr(x) ((x) * (x))
    
    typedef struct{
        double x;
        double y;
    }Point;
    
    double dis(Point *p1, Point *p2)
    {
        return sqrt(sqr((*p1).x - (*p2).x) + sqr((*p1).y - (*p2).y));    
    } 
    
    int main(void)
    {
        Point a, b;
        
        printf("a - x:  "); scanf("%lf", &a.x);
        printf("a - y:  "); scanf("%lf", &a.y);
        printf("b - x:  "); scanf("%lf", &b.x);
        printf("b - y:  "); scanf("%lf", &b.y);
        
        printf("distanbe between a and b: %.2f
    ", dis(&a, &b));
        
        return 0;
    }

     ↓

    #include <stdio.h>
    #include <math.h>
    
    #define sqr(x) ((x) * (x))
    
    typedef struct{
        double x;
        double y;
    }Point;
    
    double dis(Point *p1, Point *p2)
    {
        return sqrt(sqr(p1 -> x - p2 -> x) + sqr(p1 -> y - p2 -> y));    
    } 
    
    int main(void)
    {
        Point a, b;
        
        printf("a - x:  "); scanf("%lf", &a.x);
        printf("a - y:  "); scanf("%lf", &a.y);
        printf("b - x:  "); scanf("%lf", &b.x);
        printf("b - y:  "); scanf("%lf", &b.y);
        
        printf("distanbe between a and b: %.2f
    ", dis(&a, &b));
        
        return 0;
    }

  • 相关阅读:
    2015PPTV校招笔试详解
    2015华数校招笔试详解
    2015我的校招之路
    2015美团校招笔试试题
    关于联想超极本装入Ubuntu系统无法开启无线硬件开关的解决
    RabbitMQ
    office 2016 for mac 下拉框 无法展开问题
    mac 下 tomcat7的安装
    mac 10.11.6,Xcode8下,ruby2.3安装,Cocoapods安装~
    学习的学习的方法
  • 原文地址:https://www.cnblogs.com/liujiaxin2018/p/14853403.html
Copyright © 2020-2023  润新知