Chu279 2021-06-08 09:44 采纳率: 10%
浏览 1234
已结题

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

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

1条回答 默认 最新

  • qfl_sdu 2021-06-08 10: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("内含");
    
    }

    展开全部

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
编辑
预览

报告相同问题?

手机看
程序员都在用的中文IT技术交流社区

程序员都在用的中文IT技术交流社区

专业的中文 IT 技术社区,与千万技术人共成长

专业的中文 IT 技术社区,与千万技术人共成长

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

客服 返回
顶部