用C语言编写下列程序,给定平面上任意三个点的坐标(x 1 ,y 1 )、(x 2 ,y 2 )、(x 3 ,y 3 ),检验它们能否构成三角形
时间: 2023-06-02 08:07:07 浏览: 134
以下是用C语言编写的程序,可以检验给定的三个点能否构成三角形:
```
#include <stdio.h>
int main() {
float x1, y1, x2, y2, x3, y3;
printf("请输入三个点的坐标:\n");
scanf("%f %f %f %f %f %f", &x1, &y1, &x2, &y2, &x3, &y3);
float a = sqrt((x2-x1)*(x2-x1) + (y2-y1)*(y2-y1)); // 计算三条边的长度
float b = sqrt((x3-x2)*(x3-x2) + (y3-y2)*(y3-y2));
float c = sqrt((x1-x3)*(x1-x3) + (y1-y3)*(y1-y3));
if (a+b>c && a+c>b && b+c>a) { // 判断是否构成三角形
printf("这三个点能构成三角形!\n");
} else {
printf("这三个点不能构成三角形!\n");
}
return 0;
}
```
相关问题
用c语言写给定平面上任意三个点的坐标(x 1 ,y 1 )、(x 2 ,y 2 )、(x 3 ,y 3 ),检验它们能否构成三角形。
```c
#include <stdio.h>
#include <math.h>
int main()
{
float x1, y1, x2, y2, x3, y3;
float side1, side2, side3;
printf("Enter the coordinates of three points (x1,y1), (x2,y2), (x3,y3): ");
scanf("%f %f %f %f %f %f", &x1, &y1, &x2, &y2, &x3, &y3);
side1 = sqrt(pow((x2 - x1), 2) + pow((y2 - y1), 2));
side2 = sqrt(pow((x3 - x2), 2) + pow((y3 - y2), 2));
side3 = sqrt(pow((x1 - x3), 2) + pow((y1 - y3), 2));
if (side1 + side2 > side3 && side1 + side3 > side2 && side2 + side3 > side1)
{
printf("The given points form a triangle.\n");
}
else
{
printf("The given points do not form a triangle.\n");
}
return 0;
}
```
用c语言编写输入一个坐标(x,y),判断该点位于第几象限或坐标轴上
以下是用 C 语言编写的输入一个坐标(x,y),判断该点位于第几象限或坐标轴上的代码:
```c
#include <stdio.h>
int main() {
float x, y;
printf("请输入一个点的坐标(x,y):");
scanf("%f%f", &x, &y);
if (x == 0 && y == 0) {
printf("该点位于原点");
} else if (x == 0) {
printf("该点位于 y 轴");
} else if (y == 0) {
printf("该点位于 x 轴");
} else if (x > 0 && y > 0) {
printf("该点位于第一象限");
} else if (x < 0 && y > 0) {
printf("该点位于第二象限");
} else if (x < 0 && y < 0) {
printf("该点位于第三象限");
} else {
printf("该点位于第四象限");
}
return 0;
}
```
代码中,我们使用 `scanf()` 函数输入一个点的坐标(x,y),然后使用 if 语句判断该点所在的象限或坐标轴。首先判断是否位于原点,然后分别判断 x 和 y 是否为零,最后判断 x 和 y 的正负来确定所在的象限。