用C++ 编写程序,已知平面上有一个圆,圆心坐标为(4, 6),半径为2。请输入一个点M的坐标(x, y),判断点M是在圆内、圆上还是在圆外。
时间: 2023-05-29 11:07:39 浏览: 103
```c
#include <stdio.h>
#include <math.h>
int main()
{
double x, y; // 点M的坐标
double cx = 4, cy = 6, r = 2; // 圆心坐标和半径
double d; // 点M到圆心的距离
printf("请输入点M的坐标(x, y): ");
scanf("%lf %lf", &x, &y);
d = sqrt((x - cx) * (x - cx) + (y - cy) * (y - cy)); // 计算点M到圆心的距离
if (d < r) // 点M在圆内
printf("点M在圆内\n");
else if (d == r) // 点M在圆上
printf("点M在圆上\n");
else // 点M在圆外
printf("点M在圆外\n");
return 0;
}
```
相关问题
用C++ 1. 编写程序,已知平面上有一个圆,圆心坐标为(4, 6),半径为2。请输入一个点M的坐标(x, y),判断点M是在圆内、圆上还是在圆外。
以下是用C编写的程序,可以判断一个点M是否在圆内、圆上还是在圆外:
```c
#include <stdio.h>
#include <math.h>
int main() {
double x, y, distance;
double center_x = 4, center_y = 6, radius = 2;
printf("请输入点M的坐标(x, y):");
scanf("%lf %lf", &x, &y);
distance = sqrt(pow(x - center_x, 2) + pow(y - center_y, 2));
if (distance < radius) {
printf("点M在圆内\n");
} else if (distance == radius) {
printf("点M在圆上\n");
} else {
printf("点M在圆外\n");
}
return 0;
}
```
注意:这个程序中使用了数学库中的sqrt和pow函数,需要在编译时链接数学库,可以使用以下命令编译:
```
gcc -o circle circle.c -lm
```
阅读全文