从键盘上输入三个实数,它们分别代表三条线段的长度,编写一个C程序判断这三条线段所组成的三角形属于什么类型(不等边,等腰,等边或不构成三角形)的;如果能构成三角形,求该三角形的面积(取2位小数)。要求:写出完整的程序,并编译、运行、检查
时间: 2023-04-09 07:04:59 浏览: 209
以下是CSDN开发的C知道的回答:
请看下面的代码:
```
#include <stdio.h>
#include <math.h>
int main()
{
float a, b, c;
float s, area;
printf("请输入三角形的三条边长:\n");
scanf("%f%f%f", &a, &b, &c);
if(a+b>c && a+c>b && b+c>a)
{
if(a==b && b==c)
{
printf("这是一个等边三角形\n");
}
else if(a==b || b==c || a==c)
{
printf("这是一个等腰三角形\n");
}
else
{
printf("这是一个不等边三角形\n");
}
s = (a+b+c)/2;
area = sqrt(s*(s-a)*(s-b)*(s-c));
printf("该三角形的面积为:%.2f\n", area);
}
else
{
printf("这三条线段不能构成三角形\n");
}
return 0;
}
```
这个程序可以判断三条线段所组成的三角形属于什么类型,并且如果能构成三角形,还可以求出该三角形的面积。如果无法构成三角形,则会输出相应的提示信息。
请注意,这个程序只能处理正实数,如果输入的不是正实数,程序可能会出现错误。
阅读全文