C语言。。。输入三个数求是否能构成三角形,能,求出面积。。。

如题所述

#include "stdio.h"

#include "math.h"

int main()

{

   double a,b,c,sum,area;

   printf("请输入三个数:");

   scanf("%lf%lf%lf",&a,&b,&c);

   if(a>0 && b>0 && c>0 && a+b>c && b+c>a && a+c>b)

   {

         printf("输入的三个数可以组成三角形,其面积为:");

         sum=(a+b+c)/2;

         area=sqrt(sum*(sum-a)*(sum-b)*(sum-c));

         printf("%lf\n",area);

        

 

   }

   else

   {

          printf("输入的三个数不能组成三角形!\n");

   }

 

 

}

追问

看看哪错了

追答

看不清哦,你照着我写的抄一次,肯定没问题。

追问

你来个程序截屏
可能格式有问题无论咋样都显示构不成三角形

追答

追问

还是不行和你的分毫不差

追答

关闭vc,全删除你写的代码,重开,再写入,再编译
还有,输入三个数,中间是用空格隔开,你运行结果,我一般回答都有图,不知道为什么你会有问题。。。

追问

哦是我发错了。。。把L打成i了

追答

悲剧啊,
还是要细心哦
尤其刚学的时候

温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-05-13
#include <stdio.h>
#include <math.h>

int main()
{
int a, b, c;
float p, s;
scanf("%d%d%d", &a, &b, &c);
if (a + b > c && a + c > b && b + c > a)
{
p = (a + b + c) / 2.0;
s = p * (p - a) * (p - b) * (p - c);
s = sqrt(s);
printf("S = %.2f\n", s);
}
else printf("NO\n");
return 0;
}
进行一下试试
相似回答