当前位置:首页 » 编程语言 » 与海伦公式对应的c语言表达式
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

与海伦公式对应的c语言表达式

发布时间: 2022-09-05 04:52:41

c语言编程 已知三角形三边a b c求面积,利用海伦公式实现

#include <stdio.h>

#include <math.h>

int main()

{

printf("请分别输入三角形边长,按回车:\n");

float a,b,c;

float s,area;

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

if(a+b>c && a+c>b && b+c>a) //判断是否可以构成三角形。

{

s=(a+b+c)/2;//计算半周长

area=sqrt(s*(s-a)*(s-b)*(s-c));//套用海伦公式,计算面积

printf("这个三角形的面积为%lf\n", area);//输出结果

}

else printf("无法构成三角形\n");//输入不合法,提示。

return 0;

}

望采纳。

⑵ c语言 关于海伦公式 求助

是刚学C吧?好象对变量的作用域、命名以及命令的使用还要再加强一下。
三个函数中都有错误:
一,看你的程序,似乎是想把变量s作为一个全局变量,在各个函数中使用,可该变量并没有定义。(那个主函数中的S是大写的,与此无关。)
二,变量名与函数名重合,如果s是全局变量的话,那么又与函数s(float,float,float)的命名重复,编译器无法确定同样的一个名字到底是函数还是变量,不能通过编译。同时,在函数area(float,float,float)中,里面有一个求面积的变量area也没有定义。
三,主函数中的语法逻辑错误。
程序的本意是先判断三条边是否符合构成三角形的条件,然后再计算面积。但:
1、这里其实应该用if语句,而不用循环;
2、即使是采用循环,从逻辑上也是错的:照你的程序,只要符合条件(两边之和大于第三边)就一直循环下去,除非不符合方退出,这个程序不能计算出正确的结果。
虽然下面是按尽量按程序的原样改动,但一般而言不提倡使用全局变量,因为使用多了,程序的可移植性会大受影响。
综上所述,程序和如下改动(在保证正确的情况下尽量不改变原程序):

#include<stdio.h>
#include<math.h>
float s;
void main()
{ float area(float a,float b,float c);
float a,b,c,S;
scanf("%f %f %f",&a,&b,&c);
if(a+b>c&&a+c>b);
S=area(a,b,c);}
}
float area(float a,float b,float c)
{
float ss(float a,float b,float c);
float area;
s=ss(a,b,c);
area=sqrt(s*(s-a)*(s-b)*(s-c));
printf("area=%f",area);
return area;
}
float ss(float a,float b,float c)
{
s=(a+b+c)*0.5;
return s;
}

⑶ c语言三角形面积 海伦公式

voidmain()
{
floatx,y,z,s,n,m;
scanf("%f%f%f",&x,&y,&z);
if((x+y<=z)||(x+z<=y)||(y+z<=x))//判断是否能构成三角形条件
{
printf("wrong ");
}
else
{
n=(x+y+z)/2.0;//这里要用浮点数2.0
s=n*(n-x)*(n-y)*(n-z);
m=sqrt(s);
printf("%f ",m);
}
}

⑷ C语言编程,已知三角形的三边长a,b,c,计算求三角形面积的公式为:

程序代码如下:

#include <stdio.h>

#include <math.h>

int main()

{

printf("输入三个边长: ");

float a,b,c;

float s,area;

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

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

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

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

printf("面积是%.2f ",area);

else

printf("三条边无法构成三角形");

return 0;

}

(4)与海伦公式对应的c语言表达式扩展阅读

三角形具有以下性质:

1、三角形任意两边之和大于第三边,任意两边之差小于第三边。

2、在平面上三角形的内角和等于180°(内角和定理)。

3、在平面上三角形的外角和等于360° (外角和定理)。

4、三角形的三条角平分线交于一点,三条高线的所在直线交于一点,三条中线交于一点。

5、三角形的任意一条中线将这个三角形分为两个面积相等的三角形。

⑸ C语言海伦公式

#include&lt;math.h&gt;#include&lt;stdio.h&gt;main(){floata,b,c,p,s;printf(&quot;changkuangaoshi?&quot;);scanf(&quot;%f%f%f&quot;,&amp;a,&amp;b,&amp;c);&#47;&#47;注意p=(a+b+c)&#47;2;s=sqrt(p*(p-a)*(p-b)*(p-c));printf(&quot;mianjishi:%f&quot;,s);}最后吐一下糟,这个英语水平,实在是,现在都有在线字典了啊

⑹ 用海伦公式求三角形的面积的程序代码怎么写(用C语言)

#include
<stdio.h>
#include
<math.h>
#define
p
((a+b+c)/2)
//
这个值很重要
int
main(int
argc,
char
*argv[])
{
float
a,b,c;
double
area;
//
获取三角形的三个边数据
scanf("Pls
input
a,
b,
c:%f%f%f",
&a,
&b,
&c);
//
判断输入是否合法
if(a>=b+c
||
b>=a+c
||
c>=a+b)
{
printf("Args
error\n");
return
-1;
}
//
计算面积
area
=
sqrt((double)(p*(p-a)*(p-b)*(p-c)));
printf("Area
=
%f\n",
area);
return
0;
}

⑺ C语言中求三角形的“海伦公式”是什么意思像下面公式:请大大们帮解析。

这个在初中七年级就学过了啊!你画画图嘛,你是不是太懒了?
证明:海伦公式:若ΔABC的三边长为a、b、c,则
SΔABC=√((a+b+c)×(-a+b+c)×(a-b+c)×(a+b-c))/4(这是海伦公式的变形,“负号“-”从a左则向右经过a、b、c”,负号从x轴负轴向正轴扫描一个周期!我觉得这么记更简单,还设个什么l=(a+b=c)/2啊,多此一举!)
证明:设边c上的高为 h,则有
√(a^2-h^2)+√(b^2-h^2)=c
√(a^2-h^2)=c-√(b^2-h^2)
两边平方,化简得:
2c√(b^2-h^2)=b^2+c^2-a^2
两边平方,化简得:
h=√(b^2-(b^2+c^2-a^2)^2/(4c^2))
SΔABC=ch/2
=c√(b^2-(b^2+c^2-a^2)^2/(4c^2))/2
仔细化简一下,得:
SΔABC=√((a+b+c)×(-a+b+c)×(a-b+c)×(a+b-c))/4

用三角函数证明!
证明:
SΔABC=absinC/2
=ab√(1-(cosC)^2)/2————(1)
∵cosC=(a^2+b^2-c^2)/(2ab)
∴代入(1)式,(仔细)化简得:
SΔABC=√((a+b+c)×(-a+b+c)×(a-b+c)×(a+b-c))/4

⑻ C语言编写海伦公式


#include<stdio.h>
#include<math.h>
intmain()
{
doublea,b,c,s,area;
printf("Enterabc:");
//因为是double类型的数据,要用lf
while(scanf("%lf%lf%lf",&a,&b,&c)!=EOF)
{
s=(a+b+c)/2;
area=sqrt(s*(s-a)*(s-b)*(s-c));
printf("area=%lf",area);
}
return0;
}

运行结果:

⑼ C语言编程,三角形面积的海伦公式为:area=开根号[s(s-a)(s-b)(s-c],其中s=(a+b+c)/2, a、b、c是三角形的

#include<stdio.h>
#include <math.h>
void main()
{
float a,b,c;
int s,area;
printf("请输入三角形三边的值:\n");
scanf("%f %f %f",&a,&b,&c);
if(a+b>c&&a+c>b)
{
s=(a+b+c)/2;
area=sqrt(s*(s-a)*(s-b)*(s-c));
}
printf("三角形的面积是:");
printf("%d\n",area);
printf("三角形的周长是:");
printf("%d\n",s*2);
}
}
输入3 4 5
中间间隔为空格

⑽ 运用C语言函数和海伦公式求三角形面积急求

#include<stdio.h>
#include<math.h>
main()
{
float a,b,c,s,area=0;
printf("请输入三角形三个边,空格间隔,回车结束!\n");
scanf("%f%f%f",&a,&b,&c);
if(a+b<=c ||a+c<=b || b+c<=a )
{printf("输入错误,三角形两边之和应大于第三边,请重新输入!\n");return 0;}
else
s=(a+b+c)/2;
area=sqrt(s*(s-a)*(s-b)*(s-c));
printf("三角形面积是:%.3f",area);//保留了三位小数
}