Chu279 2021-06-08 17:44 采纳率: 16.7%
浏览 1132
已结题

求C语言题目!谢谢 定义一个表示平面上点的结构体类型point,包括两个实数型 成员,分别为点的x

求C语言题目!谢谢 定义一个表示平面上点的结构体类型point,包括两个实数型 成员,分别为点的x坐标和y坐标:再定义表示平面上圆的结构体类型,包括两个成员,分别为圆心(point结构体类型)和半径(实数型)。从键盘输入两个圆的数据,并判定两圆位置关系(外离、外切、相交、内切或内含)。
  • 写回答

1条回答 默认 最新

  • qfl_sdu 2021-06-08 18:12
    关注

    代码如下,如有帮助,请采纳一下,谢谢。

    #include <stdio.h>
    #include <math.h>
    struct point
    {
    	double x,y;
    };
    
    struct circle
    {
    	point center;
    	double radius;
    };
    
    int main()
    {
    	circle c1,c2;
    	double disCent;
    	printf("请输入圆1的中心点和半径:");
    	scanf("%lf %lf %lf",&c1.center.x,&c1.center.y,&c1.radius);
    	printf("请输入圆2的中心点和半径:");
    	scanf("%lf %lf %lf",&c2.center.x,&c2.center.y,&c2.radius);
    
    	disCent = sqrt((c1.center.x - c2.center.x)* (c1.center.x - c2.center.x)+(c1.center.y - c2.center.y)* (c1.center.y - c2.center.y));
    
    	if (disCent > c1.radius + c2.radius)
    	{
    		printf("外离\n");
    	}else if (disCent = c1.radius + c2.radius)
    	{
    		printf("外切\n");
    	}else if ( abs(c1.radius - c2.radius) == disCent)
    	{
    		printf("内切\n");
    	}else if (disCent < c1.radius + c2.radius && disCent > abs(c1.radius-c2.radius))
    	{
    		printf("相交\n");
    	}else
    		printf("内含");
    
    }
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 有了解d3和topogram.js库的吗?有偿请教
  • ¥100 任意维数的K均值聚类
  • ¥15 stamps做sbas-insar,时序沉降图怎么画
  • ¥15 unity第一人称射击小游戏,有demo,在原脚本的基础上进行修改以达到要求
  • ¥15 买了个传感器,根据商家发的代码和步骤使用但是代码报错了不会改,有没有人可以看看
  • ¥15 关于#Java#的问题,如何解决?
  • ¥15 加热介质是液体,换热器壳侧导热系数和总的导热系数怎么算
  • ¥100 嵌入式系统基于PIC16F882和热敏电阻的数字温度计
  • ¥15 cmd cl 0x000007b
  • ¥20 BAPI_PR_CHANGE how to add account assignment information for service line