题目:从健盘任意输入三角形的三边长为a,b,c,编程判断a,b,c的值能否构成一个三角形,若能构成三角形,则计算并输出三角形的面积,否则提示不能构成三角形。
已知构成三角形的条件是:任意两边之和大于第三边。
解析:能否构成三角形用条件判断,求三角形面积使用海伦公式
逻辑:if判断,是分支使用海伦公式计算面积, 注意导入math库,数据类型为浮点型
# include <stdio.h>
# include <math.h>
int main(void)
{
double a = 0;
double b = 0;
double c = 0;
double p = 0;
double area = 0;
int flag = 0;
do
{
printf("输入a,b,c:\n");
scanf("%lf %lf %lf", &a, &b, &c);
p = (a + b + c) / 2;
if ( a+b > c && a+c>b && b+c>a)
{
area = sqrt(p *(p - a)*(p - b)*(p - c));
printf("三角形面积:%f\n", area);
}
else
{
printf("无法构成三角形");
}
printf("继续 1,退出 0: ");
scanf("%d", &flag); // 继续?
} while (flag);
return 0;
}