考试题4 两圆是否相交Time Limit:1000MS Memory Limit:65536K 题型: 编程题 语言: G++;GCC 描述给出平面坐标中两个圆的圆心坐标与半径,判断这两个圆是否相交(即圆边有交点),是则输出yes,否则输出no。 输入格式两行,每行三个数,分别为X坐标,Y坐标以及半径 输出格式yes或no 输入样例1.1 1.1 1.1 2.2 2.2 1.5 输出样例yes |
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#include <string.h>
int main()
{
double x1,y1,r1,x2,y2,r2,d1;
scanf("%lf%lf%lf%lf%lf%lf",&x1,&y1,&r1,&x2,&y2,&r2);
d1=sqrt((x1-x2)*(x1-x2)+(y1-y2)*(y1-y2));
if(r1+r2<d1||fabs(r1-r2)>d1)//考虑两种情况,包含和不包含
printf("no");
else
printf("yes");
return 0;
}